112 lines
3.3 KiB
PHP
112 lines
3.3 KiB
PHP
<?php
|
|
/************************************************************************
|
|
Telaen is a GPL'ed software developed by
|
|
|
|
- The Telaen Group
|
|
- http://jimjag.github.io/telaen/
|
|
|
|
*************************************************************************/
|
|
|
|
/*
|
|
* This module takes care of setting and/or initializing
|
|
* pre-init core aspects of Telaen before main initialization.
|
|
*
|
|
* Why not simply fold into init.php? index.php doesn't require
|
|
* or work if init.php is scarfed in.
|
|
*/
|
|
|
|
defined('I_AM_TELAEN') or die('Direct access not permitted');
|
|
|
|
require_once './inc/class/class.Telaen.php';
|
|
require_once './inc/class/class.MyMonth.php';
|
|
require_once './inc/class/class.Session.php';
|
|
|
|
@set_magic_quotes_runtime(0); // Smarty and magic_quotes_runtime ON do not mix.
|
|
|
|
if (version_compare(PHP_VERSION, "5.4.0", "<")) {
|
|
die('PHP version 5.4 and and greater are required');
|
|
}
|
|
/*
|
|
* "emulate" register_globals ON: These are semi-global
|
|
* vars used by just about all main entry points (see inc/init.php)
|
|
*/
|
|
|
|
extract(Telaen::pullFromArray($_GET, ['pag', 'err', 'ix'], 1));
|
|
extract(Telaen::pullFromArray($_GET, ['folder', 'sortby', 'sortorder', 'lng', 'tem', 'uidl'], 's'));
|
|
extract(Telaen::pullFromArray($_POST, ['pag', 'six'], 1));
|
|
extract(Telaen::pullFromArray($_POST, ['folder', 'f_email', 'f_user', 'f_pass', 'lng', 'tem', 'uidl'], 's'));
|
|
|
|
/*
|
|
* Clean up user login info
|
|
*/
|
|
$pag = (abs($pag) > 1 ? abs($pag) : 1);
|
|
if (isset($err)) $err = abs($err);
|
|
if (isset($ix)) $ix = abs($ix);
|
|
if (isset($lng)) $lng = trim($lng);
|
|
if (isset($tem)) $tem = trim($tem);
|
|
if (isset($uidl)) $uidl = trim($uidl);
|
|
if (isset($six)) $six = abs($six);
|
|
if (isset($folder))
|
|
$folder = urldecode($folder);
|
|
else
|
|
$folder = 'inbox';
|
|
|
|
if (isset($f_email)) {
|
|
$f_email = stripslashes($f_email);
|
|
if (!PHPMailer::validateAddress($f_email)) {
|
|
unset($f_email);
|
|
}
|
|
}
|
|
|
|
if (isset($f_user)) {
|
|
$f_user = stripslashes($f_user);
|
|
if (!PHPMailer::validateAddress("{$f_user}@example.com")) {
|
|
unset($f_user);
|
|
}
|
|
}
|
|
|
|
if (isset($f_pass)) {
|
|
$f_pass = stripslashes($f_pass);
|
|
}
|
|
|
|
$textout = <<<EOF
|
|
<!-- Page generated by Telaen (http://jimjag.github.io/telaen/) -->
|
|
EOF;
|
|
|
|
define('FL_TYPE_MOVE', (1 << 0));
|
|
define('FL_TYPE_DELETE', (1 << 1));
|
|
define('FL_TYPE_MARK_READ', (1 << 2));
|
|
define('FL_TYPE_SPAM', (1 << 3));
|
|
|
|
define('FL_FIELD_FROM', (1 << 0));
|
|
define('FL_FIELD_SUBJECT', (1 << 1));
|
|
define('FL_FIELD_TO', (1 << 2));
|
|
define('FL_FIELD_HEADER', (1 << 3));
|
|
define('FL_FIELD_BODY', (1 << 4));
|
|
|
|
function extended_name($folder)
|
|
{
|
|
global $lang;
|
|
switch ($folder) {
|
|
case 'inbox':
|
|
$boxname = (!empty($lang['inbox_extended']) ? $lang['inbox_extended'] : 'INBOX');
|
|
break;
|
|
case 'sent':
|
|
$boxname = (!empty($lang['sent_extended']) ? $lang['sent_extended'] : 'Sent');
|
|
break;
|
|
case 'trash':
|
|
$boxname = (!empty($lang['trash_extended']) ? $lang['trash_extended'] : 'Trash');
|
|
break;
|
|
case 'spam':
|
|
$boxname = (!empty($lang['spam_extended']) ? $lang['spam_extended'] : 'SPAM folder');
|
|
break;
|
|
case 'drafts':
|
|
$boxname = (!empty($lang['drafts_extended']) ? $lang['drafts_extended'] : 'Drafts');
|
|
break;
|
|
default:
|
|
$boxname = $folder;
|
|
break;
|
|
}
|
|
return $boxname;
|
|
|
|
}
|