Пример #1
0
$newscannerinfo = new Vtiger_MailScannerInfo(false, false);
$newscannerinfo->scannername = $scannername;
$newscannerinfo->server = $server;
$newscannerinfo->protocol = vtlib_purify(trim($_REQUEST['mailboxinfo_protocol']));
$newscannerinfo->username = $username;
$newscannerinfo->password = vtlib_purify(trim($_REQUEST['mailboxinfo_password']));
$newscannerinfo->ssltype = vtlib_purify(trim($_REQUEST['mailboxinfo_ssltype']));
$newscannerinfo->sslmethod = vtlib_purify(trim($_REQUEST['mailboxinfo_sslmethod']));
$newscannerinfo->searchfor = vtlib_purify(trim($_REQUEST['mailboxinfo_searchfor']));
$newscannerinfo->markas = vtlib_purify(trim($_REQUEST['mailboxinfo_markas']));
$newscannerinfo->isvalid = $_REQUEST['mailboxinfo_enable'] == 'true' ? true : false;
// Rescan all folders on next run?
$rescanfolder = $_REQUEST['mailboxinfo_rescan_folders'] == 'true' ? true : false;
$isconnected = false;
$scannerinfo = new Vtiger_MailScannerInfo(trim($_REQUEST['hidden_scannername']));
if (!$scannerinfo->compare($newscannerinfo)) {
    $mailbox = new Vtiger_MailBox($newscannerinfo);
    $isconnected = $mailbox->connect();
    if ($isconnected) {
        $newscannerinfo->connecturl = $mailbox->_imapurl;
    }
} else {
    $isconnected = true;
    $scannerinfo->isvalid = $newscannerinfo->isvalid;
    // Copy new value
    $newscannerinfo = $scannerinfo;
}
if (!$isconnected) {
    require_once 'Smarty_setup.php';
    global $app_strings, $mod_strings, $currentModule, $theme, $current_language;
    $smarty = new vtigerCRM_Smarty();
Пример #2
0
 /**
  * Function to save this record
  * @return <Boolean> true/false (Saved/Not Saved)
  */
 public function save()
 {
     vimport('~~modules/Settings/MailConverter/handlers/MailScannerInfo.php');
     $scannerLatestInfo = new Vtiger_MailScannerInfo(false, false);
     $fieldsList = $this->getModule()->getFields();
     foreach ($fieldsList as $fieldName => $fieldModel) {
         $scannerLatestInfo->{$fieldName} = $this->get($fieldName);
     }
     $scannerId = $this->getId();
     if (!empty($scannerId)) {
         $scannerLatestInfo->scannerid = $this->getId();
     }
     //Checking Scanner Name
     $scannerName = $this->getName();
     if ($scannerName && !validateAlphanumericInput($scannerName)) {
         return false;
     }
     //Checking Server
     $server = $this->get('server');
     if ($server && !validateServerName($server)) {
         return false;
     }
     $isConnected = true;
     $scannerOldInfo = new Vtiger_MailScannerInfo($this->get('scannerOldName'));
     if (!$scannerOldInfo->compare($scannerLatestInfo)) {
         vimport('~~modules/Settings/MailConverter/handlers/MailBox.php');
         $mailBox = new Vtiger_MailBox($scannerLatestInfo);
         $isConnected = $mailBox->connect();
     }
     if ($isConnected) {
         $scannerLatestInfo->connecturl = $mailBox->_imapurl;
         //$scannerLatestInfo->isvalid = $scannerOldInfo->isvalid = $isConnected;
         if (!empty($scannerId)) {
             $scannerOldInfo->scannerid = $scannerId;
         }
         $mailServerChanged = $scannerOldInfo->update($scannerLatestInfo);
         if (empty($scannerId)) {
             $this->set('scannerid', $scannerOldInfo->scannerid);
         }
         $rescanFolder = false;
         if ($this->get('searchfor') === 'all') {
             $rescanFolder = true;
         }
         $scannerOldInfo->updateAllFolderRescan($rescanFolder);
     }
     return $isConnected;
 }