X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=plugins%2Fmail_fetch%2Foptions.php;h=d71d27a5e3c3a263dde540291f89c362f550cd77;hp=0cba822f889385f772cbced963c283c64f544e89;hb=701e7beed3baca980039f978c6d536dd91cae775;hpb=1977ab5587905d225c6288141b82f7a6e3d29d02 diff --git a/plugins/mail_fetch/options.php b/plugins/mail_fetch/options.php index 0cba822f..d71d27a5 100644 --- a/plugins/mail_fetch/options.php +++ b/plugins/mail_fetch/options.php @@ -5,7 +5,7 @@ * * Setup of the mailfetch plugin. * - * @copyright 1999-2010 The SquirrelMail Project Team + * @copyright 1999-2014 The SquirrelMail Project Team * @license http://opensource.org/licenses/gpl-license.php GNU Public License * @version $Id$ * @package plugins @@ -56,6 +56,8 @@ sqgetGlobalVar('mf_lmos', $mf_lmos, SQ_POST); sqgetGlobalVar('mf_auth', $mf_auth, SQ_POST); sqgetGlobalVar('mf_type', $mf_type, SQ_POST); sqgetGlobalVar('submit_mailfetch', $submit_mailfetch, SQ_POST); +$mf_port = trim($mf_port); +$mf_server = trim($mf_server); /* end globals */ @@ -64,6 +66,19 @@ displayPageHeader( $color ); switch( $mf_action ) { case 'add': + + $mf_action = 'config'; + + // restrict port number if necessary + // + $message = validate_mail_fetch_port_number($mf_port); + if (!empty($message)) break; + + // restrict server address if necessary + // + $message = validate_mail_fetch_server_address($mf_server); + if (!empty($message)) break; + if ($mf_sn<1) $mf_sn=0; if (!isset($mf_server)) return; setPref($data_dir,$username,"mailfetch_server_$mf_sn", (isset($mf_server)?$mf_server:"")); @@ -88,10 +103,28 @@ switch( $mf_action ) { setPref($data_dir,$username,"mailfetch_type_$mf_sn",(isset($mf_type)?$mf_type:MAIL_FETCH_USE_PLAIN)); $mf_sn++; setPref($data_dir,$username,'mailfetch_server_number', $mf_sn); - $mf_action = 'config'; break; + + // modify a server + // case 'confirm_modify': - //modify a server + + // restrict port number if necessary + // + $message = validate_mail_fetch_port_number($mf_port); + if (!empty($message)) { + $mf_action = 'Modify'; + break; + } + + // restrict server address if necessary + // + $message = validate_mail_fetch_server_address($mf_server); + if (!empty($message)) { + $mf_action = 'Modify'; + break; + } + if (!isset($mf_server)) return; setPref($data_dir,$username,"mailfetch_server_$mf_sn", (isset($mf_server)?$mf_server:"")); setPref($data_dir,$username,"mailfetch_port_$mf_sn", (isset($mf_port)?$mf_port:110)); @@ -209,6 +242,14 @@ echo '
' . ) , 'center', '', 'width="95%"' ); +// display error or other messages if necessary +// +if (!empty($message)) { + echo html_tag( 'table', '', 'center', '', 'width="70%" cellpadding="5" cellspacing="1"' ) . + html_tag( 'tr', + html_tag( 'td', '' . $message . '', 'center', $color[2] )); +} + switch( $mf_action ) { case 'config': echo html_tag( 'table', '', 'center', '', 'width="70%" cellpadding="5" cellspacing="1"' ) . @@ -301,7 +342,7 @@ switch( $mf_action ) { echo '' . _("Server Name:") . ' '. '  '. @@ -327,7 +368,7 @@ switch( $mf_action ) { html_tag( 'td', "" . '' . - '
' . _("Selected Server:") . " " . htmlspecialchars($mailfetch_server_[$mf_sn]) . "
" . + '
' . _("Selected Server:") . " " . sm_encode_html_special_chars($mailfetch_server_[$mf_sn]) . "
" . _("Confirm delete of selected server?") . '

' . '' . '
' , @@ -355,27 +396,27 @@ switch( $mf_action ) { html_tag( 'tr', html_tag( 'th', _("Server:"), 'right' ) . html_tag( 'td', '', 'left' ) + sm_encode_html_special_chars($mailfetch_server_[$mf_sn]) . '" size="40" />', 'left' ) ) . html_tag( 'tr', html_tag( 'th', _("Port:"), 'right' ) . html_tag( 'td', '', 'left' ) + sm_encode_html_special_chars($mailfetch_port_[$mf_sn]) . '" size="40" />', 'left' ) ) . html_tag( 'tr', html_tag( 'th', _("Alias:"), 'right' ) . html_tag( 'td', '', 'left' ) + sm_encode_html_special_chars($mailfetch_alias_[$mf_sn]) . '" size="40" />', 'left' ) ) . html_tag( 'tr', html_tag( 'th', _("Username:"), 'right' ) . html_tag( 'td', '', 'left' ) + sm_encode_html_special_chars($mailfetch_user_[$mf_sn]) . '" size="20" />', 'left' ) ) . html_tag( 'tr', html_tag( 'th', _("Password:"), 'right' ) . html_tag( 'td', '', 'left' ) + sm_encode_html_special_chars($mailfetch_pass_[$mf_sn]) . '" size="20" />', 'left' ) ) . html_tag( 'tr', html_tag( 'th', _("Authentication type:"), 'right' ) .