srt because of the changed behaviour which can break new behaviour if ( sqgetGlobalVar('srt', $temp, SQ_GET) ) { $srt = (int) $temp; } if ( sqgetGlobalVar('showall', $temp, SQ_GET) ) { $showall = (int) $temp; } if ( sqgetGlobalVar('checkall', $temp, SQ_GET) ) { $checkall = (int) $temp; } /* end of get globals */ /* Open an imap connection */ $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 0); $mailbox = (isset($mailbox) && $mailbox) ? $mailbox : 'INBOX'; /* compensate for the UW vulnerability. */ if ($imap_server_type == 'uw' && (strstr($mailbox, '../') || substr($mailbox, 0, 1) == '/')) { $mailbox = 'INBOX'; } /** * Set the global settings for a mailbox and merge them with the usersettings * for the mailbox. In the future we can add more mailbox specific preferences * preferences. */ $aMailboxGlobalPref = array( MBX_PREF_SORT => 0, MBX_PREF_LIMIT => (int) $show_num, MBX_PREF_AUTO_EXPUNGE => (bool) $auto_expunge, MBX_PREF_INTERNALDATE => (bool) getPref($data_dir, $username, 'internal_date_sort') // MBX_PREF_FUTURE => (var) $future ); /* not sure if this hook should be capable to alter the global pref array */ do_hook ('generic_header'); $aMailboxPrefSer=getPref($data_dir, $username, "pref_$mailbox"); if ($aMailboxPrefSer) { $aMailboxPref = unserialize($aMailboxPrefSer); } else { setUserPref($username,"pref_$mailbox",serialize($aMailboxGlobalPref)); $aMailboxPref = $aMailboxGlobalPref; } if (isset($srt)) { $aMailboxPref[MBX_PREF_SORT] = (int) $srt; } /** * until there is no per mailbox option screen to set prefs we override * the mailboxprefs by the default ones */ $aMailboxPref[MBX_PREF_LIMIT] = (int) $show_num; $aMailboxPref[MBX_PREF_AUTO_EXPUNGE] = (bool) $auto_expunge; $aMailboxPref[MBX_PREF_INTERNALDATE] = (bool) getPref($data_dir, $username, 'internal_date_sort'); /** * system wide admin settings and incoming vars. */ $aConfig = array( 'allow_thread_sort' => $allow_thread_sort, 'allow_server_sort' => $allow_server_sort, 'user' => $username, // incoming vars 'offset' => $startMessage ); /** * The showall functionality is for the moment added to the config array * to avoid storage of the showall link in the mailbox pref. We could change * this behaviour later and add it to $aMailboxPref instead */ if (isset($showall)) { $aConfig['showall'] = $showall; } /** * Retrieve the mailbox cache from the session. */ sqgetGlobalVar('mailbox_cache',$mailbox_cache,SQ_SESSION); $aMailbox = sqm_api_mailbox_select($imapConnection,$mailbox,$aConfig,$aMailboxPref); /* * After initialisation of the mailbox array it's time to handle the FORM data */ $sError = handleMessageListForm($imapConnection,$aMailbox); if ($sError) { $note = $sError; } /* * If we try to forward messages as attachment we have to open a new window * in case of compose in new window or redirect to compose.php */ if (isset($aMailbox['FORWARD_SESSION'])) { if ($compose_new_win) { // write the session in order to make sure that the compose window has // access to the composemessages array which is stored in the session session_write_close(); sqsession_is_active(); $comp_uri = SM_PATH . 'src/compose.php?mailbox='. urlencode($mailbox). '&session='.$aMailbox['FORWARD_SESSION']; displayPageHeader($color, $mailbox, "comp_in_new('$comp_uri');", false); } else { // save mailboxstate sqsession_register($aMailbox,'aLastSelectedMailbox'); session_write_close(); // we have to redirect to the compose page global $PHP_SELF; if (!strpos($PHP_SELF,'?')) { $location = $PHP_SELF.'?mailbox=INBOX&startMessage=1'; } else { $location = $PHP_SELF; } $location = set_url_var($location, 'session',$aMailbox['FORWARD_SESSION'], false); header("Location: $location"); exit; } } else { displayPageHeader($color, $mailbox); } do_hook('right_main_after_header'); /* display a message to the user that their mail has been sent */ if (isset($mail_sent) && $mail_sent == 'yes') { $note = _("Your Message has been sent."); } if (isset($note)) { echo html_tag( 'div', '' . $note .'', 'center' ) . "
\n"; } if ( sqgetGlobalVar('just_logged_in', $just_logged_in, SQ_SESSION) ) { if ($just_logged_in == true) { $just_logged_in = false; sqsession_register($just_logged_in, 'just_logged_in'); if (strlen(trim($motd)) > 0) { echo html_tag( 'table', html_tag( 'tr', html_tag( 'td', html_tag( 'table', html_tag( 'tr', html_tag( 'td', $motd, 'center' ) ) , '', $color[4], 'width="100%" cellpadding="5" cellspacing="1" border="0"' ) ) ) , 'center', $color[9], 'width="70%" cellpadding="0" cellspacing="3" border="0"' ); } } } if ($aMailbox['EXISTS'] > 0) { showMessagesForMailbox($imapConnection,$aMailbox); } else { $string = '' . _("THIS FOLDER IS EMPTY") . ''; echo ' '; echo ' '; echo '
'; echo ' '; echo ' '; echo '

'; echo ' '; echo ' ' . html_tag( 'td', $string."\n", 'left') . ''; echo '
'; echo '
'; } do_hook('right_main_bottom'); sqimap_logout ($imapConnection); echo ''; /* add the mailbox to the cache */ $mailbox_cache[$aMailbox['NAME']] = $aMailbox; sqsession_register($mailbox_cache,'mailbox_cache'); ?>