⚝
One Hat Cyber Team
⚝
Your IP:
216.73.217.4
Server IP:
41.128.143.86
Server:
Linux host.raqmix.cloud 6.8.0-1025-azure #30~22.04.1-Ubuntu SMP Wed Mar 12 15:28:20 UTC 2025 x86_64
Server Software:
Apache
PHP Version:
8.3.23
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
usr
/
share
/
psa-horde
/
imp
/
lib
/
Prefs
/
Special
/
View File Name :
Remote.php
* @category Horde * @copyright 2013-2017 Horde LLC * @license http://www.horde.org/licenses/gpl GPL * @package IMP */ class IMP_Prefs_Special_Remote implements Horde_Core_Prefs_Ui_Special { /** */ public function init(Horde_Core_Prefs_Ui $ui) { } /** */ public function display(Horde_Core_Prefs_Ui $ui) { global $injector, $page_output, $prefs; if ($prefs->isLocked('remote')) { return; } $ui->nobuttons = true; $page_output->addScriptFile('external/base64.js'); $page_output->addScriptFile('remoteprefs.js'); $page_output->addInlineJsVars(array( 'ImpRemotePrefs.confirm_delete' => _("Are you sure you want to delete this account?"), 'ImpRemotePrefs.empty_email' => _("The e-mail field cannot be empty."), 'ImpRemotePrefs.empty_password' => _("The password field cannot be empty."), 'ImpRemotePrefs.next' => _("Next"), 'ImpRemotePrefs.wait' => _("Please wait...") )); $view = new Horde_View(array( 'templatePath' => IMP_TEMPLATES . '/prefs' )); $view->addHelper('Horde_Core_View_Helper_Image'); $view->addHelper('Text'); switch ($ui->vars->remote_action) { case 'new': $view->new = true; break; default: $view->accounts = iterator_to_array($injector->getInstance('IMP_Remote')); break; } return $view->render('remote'); } /** */ public function update(Horde_Core_Prefs_Ui $ui) { global $injector, $notification, $prefs; if ($prefs->isLocked('remote')) { return false; } $remote = $injector->getInstance('IMP_Remote'); switch ($ui->vars->remote_action) { case 'add': try { $ob = new IMP_Remote_Account(); $ob->hostspec = $ui->vars->remote_server; $ob->username = $ui->vars->remote_user; if (strlen($ui->vars->remote_label)) { $ob->label = $ui->vars->remote_label; } if ($ui->vars->remote_port) { $ob->port = $ui->vars->remote_port; } if ($ui->vars->get('remote_type') == 'pop3') { $ob->type = $ob::POP3; } if (isset($ui->vars->remote_secure_autoconfig)) { switch ($ui->vars->remote_secure_autoconfig) { case 'starttls': $ob->secure = 'tls'; break; case 'tls': $ob->secure = 'ssl'; break; default: $ob->secure = true; break; } } else { switch ($ui->vars->remote_secure) { case 'auto': $ob->secure = true; break; case 'yes': switch ($ob->type) { case $ob::IMAP: $tmp = new Horde_Mail_Autoconfig_Server_Imap(); break; case $ob::POP3: $tmp = new Horde_Mail_Autoconfig_Server_Pop3(); break; } $tmp->host = $ob->hostspec; $tmp->port = $ob->port; $tmp->tls = 'tls'; $ob->secure = $tmp->valid() ? 'ssl' : 'tls'; break; } } $remote[strval($ob)] = $ob; $notification->push(sprintf(_("Account \"%s\" added."), $ob->label), 'horde.success'); $injector->getInstance('IMP_Ftree')->insert($ob); } catch (IMP_Exception $e) { $notification->push($e, 'horde.error'); } break; case 'delete': if (isset($remote[$ui->vars->remote_data])) { $ob = $remote[$ui->vars->remote_data]; unset($remote[$ui->vars->remote_data]); $notification->push(sprintf(_("Account \"%s\" deleted."), $ob->label), 'horde.success'); $injector->getInstance('IMP_Ftree')->delete($ob); } break; } return false; } }