!C99Shell v. 1.0 pre-release build #16!

Software: Apache/2.0.54 (Fedora). PHP/5.0.4 

uname -a: Linux mina-info.me 2.6.17-1.2142_FC4smp #1 SMP Tue Jul 11 22:57:02 EDT 2006 i686 

uid=48(apache) gid=48(apache) groups=48(apache)
context=system_u:system_r:httpd_sys_script_t
 

Safe-mode: OFF (not secure)

/home/mnnews/public_html/dwmail/   drwxr-xr-x
Free 4.04 GB of 27.03 GB (14.94%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     external.php (27.71 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/*
############################################################################
# DWmail
#      - version 4.0
#      - Copyright (c) 2003-2006 Dominion Web Design
#      - http://www.dominion-web.com/products/dwmail/
############################################################################
#
# The contents of this file are subject to the DWmail License version
# 2.2 ('License'). You may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.dominion-web.com/products/dwmail/license.php

# Software distributed under the License is distributed on an "AS IS" basis,
# without warranty of any kind, either express or implied.
#
# This code is Copyright (c) 2003-2006 Dominion Web Design.
# All rights reserved.
#
# This software may not be redistributed outside the terms of the
# license agreement.
#
############################################################################
*/
require ("./includes/init.inc.php");
require (
"./includes/global.inc.php");
require (
"./includes/imap.inc.php");
require (
"./includes/functions.inc.php");
require (
"./includes/config.inc.php");

$MainSettings = new GlobalInit();
$TransIDEnabled = $MainSettings->INIGet('session.use_trans_sid');

session_cache_limiter($DefaultSessionCache);
session_start();

if (!
$_SESSION['DefaultLang']) {
    
$_SESSION['DefaultLang'] = $DefaultLang;
}
require (
"./lang/" . strip_tags(str_replace("..", "", trim($_SESSION['DefaultLang']))) . "/global.inc.php");
require (
"./lang/" . strip_tags(str_replace("..", "", trim($_SESSION['DefaultLang']))) . "/login.inc.php");
@
setlocale(LC_TIME, $AvailLangs[$_SESSION['DefaultLang']]['locale']);

require (
"./includes/options.inc.php");

$_SESSION['tpl'] = strip_tags(trim($_SESSION['tpl']));

$getFile = new fileProperties($_SESSION['tpl']);
$PageHeader = $getFile->fileRead('header');
$PageFooter = $getFile->fileRead('footer');
$PageCopyright = $getFile->fileRead('copyright');
$PageMenu = $getFile->fileRead('menu');

$PageMenu = str_replace("[session]", $MainSettings->SessAppend_noecho($TransIDEnabled, 1), $PageMenu);
$PageMenu = str_replace("[session_append]", $MainSettings->SessAppend_noecho($TransIDEnabled, 0), $PageMenu);

$PageMenu = str_replace("[emailaddress]", $_SESSION['currentemailaddress'], $PageMenu);

$PageHeader = str_replace("[mainmenu]", $PageMenu, $PageHeader);
$PageHeader = str_replace("[charset]", $_SESSION['DefaultCharSet'], $PageHeader);
$PageHeader = str_replace("[lang]", $_SESSION['DefaultLang'], $PageHeader);
$PageHeader = str_replace("[langdir]", $AvailLangs[$_SESSION['DefaultLang']]['dir'], $PageHeader);
$PageHeader = str_replace("[pagetitle]", " - " . $lang['SExternal']['Title'], $PageHeader);
$PageFooter = str_replace("[mainmenu]", $PageMenu, $PageFooter);
$PageFooter = str_replace("[copyright]", $PageCopyright, $PageFooter);
$PageFolders = str_replace("[session]", $MainSettings->SessAppend_form($TransIDEnabled), $PageFolders);

if (
$AllowExternal == 1 && $UseDatabase == 1) {
    
$PageHeader = str_replace("[ifexternal]", "", $PageHeader);
    
$PageHeader = str_replace("[/ifexternal]", "", $PageHeader);
    
$PageFooter = str_replace("[ifexternal]", "", $PageFooter);
    
$PageFooter = str_replace("[/ifexternal]", "", $PageFooter);
}
else {
    
$PageHeader = preg_replace("/(\[)(ifexternal)(])(\r\n)*(.*)(\[\/ifexternal\])/siU", "", $PageHeader);
    
$PageFooter = preg_replace("/(\[)(ifexternal)(])(\r\n)*(.*)(\[\/ifexternal\])/siU", "", $PageFooter);
}

$genericerror = $getFile->fileRead('generic_message');
$genericerror = str_replace ('[pagetitle]', $lang['SErrors']['Title'], $genericerror);

$error_session = str_replace ('[pagemessage]', $lang['SErrors']['Session'], $genericerror);
CheckValidSession($_SESSION, $PageFooter, $error_session, $PageHeader, $lang);

$IMAPConnection = new WM_IMAPConnection($_SESSION);
$securitycheck = $IMAPConnection->WM_IMAPCheckSecurity();

$error_ipfailuresession = str_replace ('[pagemessage]', $lang['SErrors']['IP'], $genericerror);
CheckSessionSecurity($securitycheck, $PageFooter, $error_ipfailure, $PageHeader, $lang);

$mailbox = $IMAPConnection->WM_IMAPConnect();

checkmailbox_active($mailbox, $IMAPConnection, $PageHeader, $_SESSION['tpl'], $PageFooter, $getFile, $lang, $genericerror);

if (
$_GET['mode']) {
    
$mode = $_GET['mode'];
}
elseif (
$_POST['mode']) {
    
$mode = $_POST['mode'];
}
else {
    
$mode = "check";
}

if (
$UseDatabase == 1) {
    if (
$AllowExternal == 1) {
    if (
$_SESSION['servertype'] == "imap" || $_SESSION['servertype'] == "imapssl") {
        if (
$MySQLMakeConnection) {
            
$externallist = $MySQLConnection->DB_GetExternalList();
            if (
is_array($externallist) && $_REQUEST['mode'] <> 'update') {
                
$countexternal = sizeof($externallist);
                if (
$mode == "check" && $countexternal >= 1) {
                    
// We are in check mode AND we have at least one account defined
                    // To do this we form a SECOND connnection under a new class

                    
$e = $_GET['e'];
                    if (
$e == "") {
                        
// If we haven't started yet we display an initial interstitial page for the first account
                        // and then redirect to the real work
                        
$e = 0;

                        include (
"./includes/folderpane.inc.php");
                        
$PageHeader = str_replace ("[folders]", $PageFolderPane, $PageHeader);
                        
$PageHeader = LangReplace('Generic', $PageHeader, $lang);
                        
$PageHeader = LangReplace('SFolderPane', $PageHeader, $lang);
                        
$PageFooter = LangReplace('Generic', $PageFooter, $lang);
                        
$PageFooter = LangReplace('SFolderPane', $PageFooter, $lang);
                        
$PageHeader = str_replace("[header_refresh]", "<meta http-equiv=\"refresh\" content=\"0;URL=external.php?e=" . $e . "&" . strip_tags(SID) . "\" />", $PageHeader);

                        
$PageGenericMessage = $getFile->fileRead('generic_message');
                        
$PageGenericMessage = str_replace("[pagetitle]", $lang['SExternal']['Title'], $PageGenericMessage);

                        
$PageExternal = $getFile->fileRead('db_checkexternal_interstitial');
                        
$PageExternal = str_replace("[external_username]", $externallist[$e]['sess_u'], $PageExternal);
                        
$PageExternal = str_replace("[external_server]", $externallist[$e]['mailserver'], $PageExternal);
                        
$PageExternal = str_replace("[external_deliveryfolder]", $externallist[$e]['folder'], $PageExternal);

                        
$PageGenericMessage = str_replace("[pagemessage]", $PageExternal, $PageGenericMessage);

                        
header ("Content-Type: text/html; charset=" . $_SESSION['DefaultCharSet']);
                        echo
$PageHeader;
                        
$PageGenericMessage = LangReplace('SExternal', $PageGenericMessage, $lang);
                        echo
$PageGenericMessage;
                        echo
$PageFooter;
                    }
                    else {
                        
// This is where we check the account for the parsed value of e in the array $externallist
                        // Increment e by one, test if it is the SAME as $countexternal and if so redirect to mailbox.php,
                        // otherwise display another interstitial page and repeat the process

                        
if ($externallist[$e]['portnumber'] == '') {
                            if (
$externallist[$e]['servertype'] == "imap") {
                                
$externallist[$e]['portnumber'] = $DefaultIMAPPort;
                            }
                            elseif (
$externallist[$e]['servertype'] == "imapssl") {
                                if (
$AllowSSLConnections == 1) {
                                    
$externallist[$e]['portnumber'] = $DefaultIMAPSSLPort;
                                    
$externallist[$e]['ssl'] = 1;
                                }
                                else {
                                    
$externallist[$e]['portnumber'] = $DefaultIMAPPort;
                                }
                            }
                            elseif (
$externallist[$e]['servertype'] == "pop3ssl") {
                                if (
$AllowSSLConnections == 1) {
                                    
$externallist[$e]['portnumber'] = $DefaultPOP3SSLPort;
                                    
$externallist[$e]['ssl'] = 1;
                                }
                                else {
                                    
$externallist[$e]['portnumber'] = $DefaultPOP3Port;
                                }
                            }
                            else {
                                
$externallist[$e]['portnumber'] = $DefaultPOP3Port;
                            }
                        }
                        else {
                            if (
$externallist[$e]['servertype'] == "imapssl") {
                                
$externallist[$e]['ssl'] = 1;
                            }
                            elseif (
$externallist[$e]['servertype'] == "pop3ssl") {
                                
$externallist[$e]['ssl'] = 1;
                            }
                        }

                        
$ExternalIMAPConnection = new WM_IMAPConnection($externallist[$e]);
                        
$ExternalIMAPConnection->_compatibilitymode = $compatibilitymode;
                        
$ExternalMailbox = $ExternalIMAPConnection->WM_IMAPConnect();
                        
checkexternal_active($ExternalMailbox, $ExternalIMAPConnection, $PageHeader, $_SESSION['tpl'], $PageFooter, $getFile, $lang, $genericerror);

                        
// Get Email from INBOX in $ExternalMailbox and append it to INBOX in $mailbox
                        
$numberofmessages = $ExternalIMAPConnection->WM_IMAPNumMessages();
                        
$sortmessages = $ExternalIMAPConnection->WM_IMAPList(1, $numberofmessages, 0, 0);
                        if (
$sortmessages <> "") {
                            while(list(
$key, $value) = each($sortmessages)) {
                                
$header = $ExternalIMAPConnection->WM_IMAPRFCHeader($sortmessages[$key]['message_uid']);
                                
$body = $ExternalIMAPConnection->WM_IMAPGetBody($sortmessages[$key]['message_uid'], -1, -1);
                                if (!isset(
$externallist[$e]['folder'])) {
                                    
$externallist[$e]['folder'] = 'INBOX';
                                }
                                
$copymessage = $IMAPConnection->WM_IMAPCopy($externallist[$e]['folder'], $CyrusIMAP, $header, $body);
                                if (
$externallist[$e]['leave'] == 0) {
                                    
// Delete messages off server
                                    
$ExternalIMAPConnection->WM_IMAPDelete($sortmessages[$key]['message_uid']);
                                }
                                unset (
$header);
                                unset (
$body);
                            }
                        }
                        if (
$externallist[$e]['leave'] == 0) {
                            
$ExternalIMAPConnection->WM_IMAPExpungeMailbox();
                        }

                        
$ExternalIMAPConnection->WM_IMAPClose();

                        
$e++;
                        if (
$e == $countexternal) {
                            
// Redirect to mailbox.php after the work is done
                            
header ("Location: ./mailbox.php?f=INBOX&" . strip_tags(SID));
                        }
                        else {

                            
// Display interstitial redirect page for next account
                            
include ("./includes/folderpane.inc.php");
                            
$PageHeader = str_replace ("[folders]", $PageFolderPane, $PageHeader);
                            
$PageHeader = LangReplace('Generic', $PageHeader, $lang);
                            
$PageHeader = LangReplace('SFolderPane', $PageHeader, $lang);
                            
$PageFooter = LangReplace('Generic', $PageFooter, $lang);
                            
$PageFooter = LangReplace('SFolderPane', $PageFooter, $lang);

                            
$PageHeader = str_replace("[header_refresh]", "<meta http-equiv=\"refresh\" content=\"0;URL=external.php?e=" . $e . "&" . strip_tags(SID) . "\" />", $PageHeader);
                            
$PageGenericMessage = $getFile->fileRead('generic_message');
                            
$PageGenericMessage = str_replace("[pagetitle]", $lang['SExternal']['Title'], $PageGenericMessage);

                            
$PageExternal = $getFile->fileRead('db_checkexternal_interstitial');
                            
$PageExternal = str_replace("[external_username]", $externallist[$e]['sess_u'], $PageExternal);
                            
$PageExternal = str_replace("[external_server]", $externallist[$e]['mailserver'], $PageExternal);
                            
$PageExternal = str_replace("[external_deliveryfolder]", $externallist[$e]['folder'], $PageExternal);

                            
$PageGenericMessage = str_replace("[pagemessage]", $PageExternal, $PageGenericMessage);

                            
header ("Content-Type: text/html; charset=" . $_SESSION['DefaultCharSet']);
                            echo
$PageHeader;
                            
$PageGenericMessage = LangReplace('SExternal', $PageGenericMessage, $lang);
                            echo
$PageGenericMessage;
                            echo
$PageFooter;
                        }
                    }
                    
                }
                else {
                    
// This is the settings mode

                    // Why are we calling folderpane.inc.php a number of times?
                    // Because this page alters the number of emails in the INBOX we must call folderpane.inc.php
                    // AFTER all email moving has taken place, otherwise the folder totals will be inaccurate
                    
include ("./includes/folderpane.inc.php");
                    
$PageHeader = str_replace ("[folders]", $PageFolderPane, $PageHeader);
                    
$PageHeader = LangReplace('Generic', $PageHeader, $lang);
                    
$PageHeader = LangReplace('SFolderPane', $PageHeader, $lang);
                    
$PageFooter = LangReplace('Generic', $PageFooter, $lang);
                    
$PageFooter = LangReplace('SFolderPane', $PageFooter, $lang);

                    
$PageExternal = $getFile->fileRead('db_checkexternal_settings');
                    
$PageExternalList = $getFile->fileRead('db_checkexternal_accountlist');
                    
$PageExternalAccountList == '';

                    for (
$ln=0; $ln<sizeof($externallist); $ln++) {
                        
$PageExternalTmp = $PageExternalList;

                        
$PageExternalTmp = str_replace("[external_email]" , '<input type="text" name="em[' . $ln . ']" value="' . $externallist[$ln]['email'] . '" />', $PageExternalTmp);
                        
$PageExternalTmp = str_replace("[external_emailname]" , $externallist[$ln]['email'], $PageExternalTmp);
                        
$PageExternalTmp = str_replace("[external_username]" , '<input type="text" name="u[' . $ln . ']" value="' . $externallist[$ln]['sess_u'] . '" />', $PageExternalTmp);
                        
$PageExternalTmp = str_replace("[external_password]" , '<input type="password" name="p[' . $ln . ']" value="' . $externallist[$ln]['sess_p'] . '" />', $PageExternalTmp);
                        
$PageExternalTmp = str_replace("[external_server]" , '<input type="text" name="m[' . $ln . ']" value="' . $externallist[$ln]['mailserver'] . '" />', $PageExternalTmp);
                        if (
$externallist[$ln]['portnumber'] == "") {
                            
$PageExternalTmp = str_replace("[external_port]" , '<input type="text" name="pn[' . $ln . ']" value="110" />', $PageExternalTmp);
                        }
                        else {
                            
$PageExternalTmp = str_replace("[external_port]" , '<input type="text" name="pn[' . $ln . ']" value="' . $externallist[$ln]['portnumber'] . '" />', $PageExternalTmp);
                        }
                        if (
$externallist[$ln]['leave'] <> "1" && isset($externallist[$ln]['leave'])) {
                            
$PageExternalTmp = str_replace("[external_leave]" , '<input type="checkbox" name="l[' . $ln . ']" value="1" />', $PageExternalTmp);
                        }
                        else {
                            
$PageExternalTmp = str_replace("[external_leave]" , '<input type="checkbox" name="l[' . $ln . ']" value="1" checked="checked" />', $PageExternalTmp);
                        }

                        
$PageExternalTmp = str_replace("[external_alias]" , '<input type="checkbox" name="alias[' . $ln . ']" value="1" />', $PageExternalTmp);

                        
$ServerTypes2 = '<input type="radio" name="t[' . $ln . ']" value="pop3" id="pop3' . $ln . '"';
                        if (
$externallist[$ln]['servertype'] == "pop3") {
                            
$ServerTypes2 .= ' checked="checked"';
                        }
                        
$ServerTypes2 .= ' /> <label for="pop3' . $ln . '">POP3</label> <input type="radio" name="t[' . $ln . ']" id="imap' . $ln . '" value="imap"';
                        if (
$externallist[$ln]['servertype'] == "imap") {
                            
$ServerTypes2 .= ' checked="checked"';
                        }
                        
$ServerTypes2 .= ' /> <label for="imap' . $ln . '">IMAP4</label>';
                        if (
$AllowSSLConnections == 1) {
                            
$ServerTypes2 .= '<input type="radio" name="t[' . $ln . ']" value="pop3ssl" id="pop3ssl' . $ln . '"';
                            if (
$externallist[$ln]['servertype'] == "pop3ssl") {
                                
$ServerTypes2 .= ' checked="checked"';
                            }
                            
$ServerTypes2 .= ' /> <label for="pop3ssl' . $ln . '">POP3 SSL</label> <input type="radio" name="t[' . $ln . ']" id="imapssl' . $ln . '" value="imapssl"';
                            if (
$externallist[$ln]['servertype'] == "imapssl") {
                                
$ServerTypes2 .= ' checked="checked"';
                            }
                            
$ServerTypes2 .= ' /> <label for="imapssl' . $ln . '">IMAP4 SSL</label>';
                        }

                        
$PageExternalTmp = str_replace("[external_servertype]" , $ServerTypes2, $PageExternalTmp);

                        
$folderselect = "<select name=\"deliveryfolder[" . $ln . "]\">";
                        for(
$i=0; $i<count($folders); $i++) {
                            
$folderselect .= "<option value=\"" . $folders[$i]['id'] . "\"";
                            if (
$folders[$i]['id'] == $externallist[$ln]['folder'] || (!isset($externallist[$ln]['folder']) && $folders[$i]['id'] == 'INBOX')) {
                                
$folderselect .= " selected=\"selected\"";
                            }
                            
$folderselect .= ">" . $folders[$i]['name'] ."</option>\n";
                        }
                        
$folderselect .= "</select>\n";

                        
$PageExternalTmp = str_replace("[external_deliveryfolder]" , $folderselect, $PageExternalTmp);

                        
$PageExternalTmp = str_replace("[ifexistingaccount]", "", $PageExternalTmp);
                        
$PageExternalTmp = str_replace("[/ifexistingaccount]", "", $PageExternalTmp);
                        
$PageExternalTmp = str_replace("[collapsetype]", "collapsed", $PageExternalTmp);

                        
$PageExternalTmp = str_replace("[accountnumber]" , ($ln + 1), $PageExternalTmp);
                        
$PageExternalAccountList .= $PageExternalTmp;
                        unset (
$PageExternalTmp);
                    }

                    
$folderselect = "<select name=\"deliveryfolder[" . sizeof($externallist) . "]\">";
                    for(
$i=0; $i<count($folders); $i++) {
                        
$folderselect .= "<option value=\"" . $folders[$i]['id'] . "\"";
                        if (
$folders[$i]['id'] == 'INBOX') {
                            
$folderselect .= " selected=\"selected\"";
                        }
                        
$folderselect .= ">" . $folders[$i]['name'] ."</option>\n";
                    }
                    
$folderselect .= "</select>\n";

                    
$PageExternalList = str_replace("[external_deliveryfolder]" , $folderselect, $PageExternalList);
                    
$PageExternalList = str_replace("[external_emailname]" , '', $PageExternalList);
                    
$PageExternalList = str_replace("[external_email]" , '<input type="text" name="em[' . sizeof($externallist) . ']" value="" />', $PageExternalList);
                    
$PageExternalList = str_replace("[external_username]" , '<input type="text" name="u[' . sizeof($externallist) . ']" value="" />', $PageExternalList);
                    
$PageExternalList = str_replace("[external_email]" , '<input type="text" name="em[' . sizeof($externallist) . ']" value="" />', $PageExternalList);
                    
$PageExternalList = str_replace("[external_password]" , '<input type="password" name="p[' . sizeof($externallist) . ']" value="" />', $PageExternalList);
                    
$PageExternalList = str_replace("[external_server]" , '<input type="text" name="m[' . sizeof($externallist) . ']" value="" />', $PageExternalList);
                    
$PageExternalList = str_replace("[external_port]" , '<input type="text" name="pn[' . sizeof($externallist) . ']" value="110" />', $PageExternalList);
                    
$PageExternalList = str_replace("[external_leave]" , '<input type="checkbox" name="l[' . sizeof($externallist) . ']" value="1" checked="checked" />', $PageExternalList);
                    
$PageExternalList = str_replace("[external_alias]" , '<input type="checkbox" name="alias[' . sizeof($externallist) . ']" value="1" checked="checked" />', $PageExternalList);
                    
$ServerTypes = '<input type="radio" name="t[' . sizeof($externallist) . ']" id="pop3' . sizeof($externallist) . '" value="pop3" checked="checked" /> <label for="pop3' . sizeof($externallist) . '">POP3</label> <input type="radio" name="t[' . sizeof($externallist) . ']" id="imap' . sizeof($externallist) . '" value="imap" /> <label for="imap' . sizeof($externallist) . '">IMAP4</label>';
                    if (
$AllowSSLConnections == 1) {
                        
$ServerTypes .= ' <input type="radio" name="t[' . sizeof($externallist) . ']" id="pop3ssl' . sizeof($externallist) . '" value="pop3ssl" /> <label for="pop3ssl' . sizeof($externallist) . '">POP3 SSL</label> <input type="radio" name="t[' . sizeof($externallist) . ']" id="imapssl' . sizeof($externallist) . '" value="imapssl" /> <label for="imapssl' . sizeof($externallist) . '">IMAP4 SSL</label>';
                    }
                    
$PageExternalList = str_replace("[external_servertype]" , $ServerTypes, $PageExternalList);
                    
$PageExternalList = str_replace("[accountnumber]" , (sizeof($externallist) + 1), $PageExternalList);

                    
$PageExternalList = preg_replace("/(\[)(ifexistingaccount)(])(\r\n)*(.*)(\[\/ifexistingaccount\])/siU", "", $PageExternalList);
                    
$PageExternalList = str_replace("[collapsetype]", "expanded", $PageExternalList);

                    
$PageExternalAccountList .= $PageExternalList;

                    
$PageExternal = str_replace("[externalaccounts]" , $PageExternalAccountList, $PageExternal);
                    
                    
$PageExternal = str_replace("[session_form]" , $MainSettings->SessAppend_form($TransIDEnabled), $PageExternal);

                    
$PageExternal = str_replace("[pop3port]" , $DefaultPOP3Port, $PageExternal);
                    
$PageExternal = str_replace("[imapport]" , $DefaultIMAPPort, $PageExternal);
                    
$PageExternal = str_replace("[pop3sslport]" , $DefaultPOP3SSLPort, $PageExternal);
                    
$PageExternal = str_replace("[imapsslport]" , $DefaultIMAPSSLPort, $PageExternal);

                    
$PageHeader = str_replace("[header_refresh]", "", $PageHeader);
                    
header ("Content-Type: text/html; charset=" . $_SESSION['DefaultCharSet']);
                    echo
$PageHeader;
                    
$PageExternal = LangReplace('SExternal', $PageExternal, $lang);
                    echo
$PageExternal;
                    echo
$PageFooter;

                }
            }
            elseif (
$_REQUEST['mode'] == 'update') {
                for (
$ln=0; $ln<sizeof($_POST['u']); $ln++) {
                    
$externallist_update[$ln]['sess_u'] = strip_tags($_POST['u'][$ln]);
                    
$externallist_update[$ln]['sess_p'] = strip_tags($_POST['p'][$ln]);
                    
$externallist_update[$ln]['mailserver'] = strip_tags($_POST['m'][$ln]);
                    
$externallist_update[$ln]['portnumber'] = strip_tags($_POST['pn'][$ln]);
                    
$externallist_update[$ln]['servertype'] = strip_tags($_POST['t'][$ln]);
                    if (
strip_tags($_POST['l'][$ln]) <> 1) {
                        
$externallist_update[$ln]['leave'] = 0;
                    }
                    else {
                        
$externallist_update[$ln]['leave'] = 1;
                    }
                    
$externallist_update[$ln]['folder'] = strip_tags($_POST['deliveryfolder'][$ln]);
                    
$externallist_update[$ln]['email'] = strip_tags($_POST['em'][$ln]);

                    if (
$_POST['alias'][$ln] == "1" && $_POST['em'][$ln] <> "") {
                        
$AliasName = trim(strip_tags(stripslashes($_POST['em'][$ln])));
                        
$AliasName = addslashes($AliasName);
                        
$AliasEmail = trim(strip_tags(stripslashes($_POST['em'][$ln])));
                        
$AliasEmail = addslashes($AliasEmail);
                        if (
$_POST['id'] == '' && $_POST['update'] <> '') {
                            
$AliasList = $MySQLConnection->DB_SaveAlias($AliasEmail, $AliasName);
                        }
                    }
                }

                
$updatelist = $MySQLConnection->DB_UpdateExternalList($externallist_update);
                
header ("Location: ./options.php?" . strip_tags(SID));
                
            }
            else {
                include (
"./includes/folderpane.inc.php");
                
$PageHeader = str_replace ("[folders]", $PageFolderPane, $PageHeader);
                
$PageHeader = LangReplace('Generic', $PageHeader, $lang);
                
$PageHeader = LangReplace('SFolderPane', $PageHeader, $lang);
                
$PageFooter = LangReplace('Generic', $PageFooter, $lang);
                
$PageFooter = LangReplace('SFolderPane', $PageFooter, $lang);

                
$PageExternal = $getFile->fileRead('db_checkexternal_settings');
                
$PageExternalList = $getFile->fileRead('db_checkexternal_accountlist');

                
$PageExternal = str_replace("[externalaccounts]" , $PageExternalList, $PageExternal);

                
$folderselect = "<select name=\"deliveryfolder[]\">";
                for(
$i=0; $i<count($folders); $i++) {
                    
$folderselect .= "<option value=\"" . $folders[$i]['id'] . "\"";
                    if (
$folders[$i]['id'] == 'INBOX') {
                        
$folderselect .= " selected=\"selected\"";
                    }
                    
$folderselect .= ">" . $folders[$i]['name'] ."</option>\n";
                }
                
$folderselect .= "</select>\n";

                
$PageExternal = str_replace("[external_deliveryfolder]" , $folderselect, $PageExternal);

                
$PageExternal = str_replace("[external_email]" , '<input type="text" name="em[]" value="" />', $PageExternal);
                
$PageExternal = str_replace("[external_emailname]" , '', $PageExternal);
                
$PageExternal = str_replace("[external_username]" , '<input type="text" name="u[]" value="" />', $PageExternal);
                
$PageExternal = str_replace("[external_password]" , '<input type="password" name="p[]" value="" />', $PageExternal);
                
$PageExternal = str_replace("[external_server]" , '<input type="text" name="m[]" value="" />', $PageExternal);
                
$PageExternal = str_replace("[external_port]" , '<input type="text" name="pn[]" value="110" />', $PageExternal);
                
$PageExternal = str_replace("[external_leave]" , '<input type="checkbox" name="l[]" value="1" checked="checked" />', $PageExternal);
                
$PageExternal = str_replace("[external_alias]" , '<input type="checkbox" name="alias[]" value="1" checked="checked" />', $PageExternal);
                
$ServerTypes = '<input type="radio" name="t[]" id="pop3" value="pop3" checked="checked" /> <label for="pop3">POP3</label> <input type="radio" name="t[]" id="imap" value="imap" /> <label for="imap">IMAP4</label>';
                if (
$AllowSSLConnections == 1) {
                    
$ServerTypes .= ' <input type="radio" name="t[]" id="pop3ssl" value="pop3ssl" /> <label for="pop3ssl">POP3 SSL</label> <input type="radio" name="t[]" id="imapssl" value="imapssl" /> <label for="imapssl">IMAP4 SSL</label>';
                }
                
$PageExternal = str_replace("[external_servertype]" , $ServerTypes, $PageExternal);
                
$PageExternal = str_replace("[accountnumber]" , '1', $PageExternal);

                
$PageExternal = preg_replace("/(\[)(ifexistingaccount)(])(\r\n)*(.*)(\[\/ifexistingaccount\])/siU", "", $PageExternal);
                
$PageExternal = str_replace("[collapsetype]", "expanded", $PageExternal);

                
$PageExternal = str_replace("[session_form]" , $MainSettings->SessAppend_form($TransIDEnabled), $PageExternal);

                
$PageHeader = str_replace("[header_refresh]", "", $PageHeader);
                
header ("Content-Type: text/html; charset=" . $_SESSION['DefaultCharSet']);
                echo
$PageHeader;
                
$PageExternal = LangReplace('SExternal', $PageExternal, $lang);
                echo
$PageExternal;
                echo
$PageFooter;
            }
        }
    }
    else {
        
// IMAP Disabled
        
include ("./includes/folderpane.inc.php");
        
$PageHeader = str_replace ("[folders]", $PageFolderPane, $PageHeader);
        
$PageHeader = LangReplace('Generic', $PageHeader, $lang);
        
$PageHeader = LangReplace('SFolderPane', $PageHeader, $lang);
        
$PageFooter = LangReplace('Generic', $PageFooter, $lang);
        
$PageFooter = LangReplace('SFolderPane', $PageFooter, $lang);

        
$PageGenericMessage = $getFile->fileRead('generic_message');
        
$PageGenericMessage = str_replace("[pagetitle]", $lang['SExternal']['Title'], $PageGenericMessage);
        
$PageGenericMessage = str_replace("[pagemessage]", $lang['SErrors']['ExternalIMAP'], $PageGenericMessage);

        
$PageHeader = str_replace("[header_refresh]", "", $PageHeader);
        
header ("Content-Type: text/html; charset=" . $_SESSION['DefaultCharSet']);
        echo
$PageHeader;
        echo
$PageGenericMessage;
        echo
$PageFooter;
    }
    }
    else {
        
// External Checking disabled
        
include ("./includes/folderpane.inc.php");
        
$PageHeader = str_replace ("[folders]", $PageFolderPane, $PageHeader);
        
$PageHeader = LangReplace('Generic', $PageHeader, $lang);
        
$PageHeader = LangReplace('SFolderPane', $PageHeader, $lang);
        
$PageFooter = LangReplace('Generic', $PageFooter, $lang);
        
$PageFooter = LangReplace('SFolderPane', $PageFooter, $lang);

        
$PageGenericMessage = $getFile->fileRead('generic_message');
        
$ExternalError = $lang['SErrors']['ExternalDisabled'];
        
$PageGenericMessage = str_replace("[pagetitle]", $lang['SExternal']['Title'], $PageGenericMessage);
        
$PageGenericMessage = str_replace("[pagemessage]", $ExternalError, $PageGenericMessage);

        
header ("Content-Type: text/html; charset=" . $_SESSION['DefaultCharSet']);
        
$PageHeader = str_replace("[header_refresh]", "", $PageHeader);
        echo
$PageHeader;
        echo
$PageGenericMessage;
        echo
$PageFooter;
    }

}
else {
    
// Database mode disabled
    
include ("./includes/folderpane.inc.php");
    
$PageHeader = str_replace ("[folders]", $PageFolderPane, $PageHeader);
    
$PageHeader = LangReplace('Generic', $PageHeader, $lang);
    
$PageHeader = LangReplace('SFolderPane', $PageHeader, $lang);
    
$PageFooter = LangReplace('Generic', $PageFooter, $lang);
    
$PageFooter = LangReplace('SFolderPane', $PageFooter, $lang);

    
$PageGenericMessage = $getFile->fileRead('generic_message');
    
$DatabaseError = $lang['SErrors']['Database'];
    
$PageGenericMessage = str_replace("[pagetitle]", $lang['SExternal']['Title'], $PageGenericMessage);
    
$PageGenericMessage = str_replace("[pagemessage]", $DatabaseError, $PageGenericMessage);

    
$PageHeader = str_replace("[header_refresh]", "", $PageHeader);
    
header ("Content-Type: text/html; charset=" . $_SESSION['DefaultCharSet']);
    echo
$PageHeader;
    echo
$PageGenericMessage;
    echo
$PageFooter;
}

$IMAPConnection->WM_IMAPClose();
?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 1.0 pre-release build #16 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0052 ]--