Overview

Packages

  • application
    • commands
    • components
      • actions
      • filters
      • leftWidget
      • permissions
      • sortableWidget
      • util
      • webupdater
      • x2flow
        • actions
        • triggers
      • X2GridView
      • X2Settings
    • controllers
    • models
      • embedded
    • modules
      • accounts
        • controllers
        • models
      • actions
        • controllers
        • models
      • calendar
        • controllers
        • models
      • charts
        • models
      • contacts
        • controllers
        • models
      • docs
        • components
        • controllers
        • models
      • groups
        • controllers
        • models
      • marketing
        • components
        • controllers
        • models
      • media
        • controllers
        • models
      • mobile
        • components
      • opportunities
        • controllers
        • models
      • products
        • controllers
        • models
      • quotes
        • controllers
        • models
      • services
        • controllers
        • models
      • template
        • models
      • users
        • controllers
        • models
      • workflow
        • controllers
        • models
      • x2Leads
        • controllers
        • models
  • None
  • system
    • base
    • caching
    • console
    • db
      • ar
      • schema
    • validators
    • web
      • actions
      • auth
      • helpers
      • widgets
        • captcha
        • pagers
  • zii
    • widgets
      • grid

Classes

  • EmailAccount
  • EmailDropboxSettings
  • GMailAccount
  • GoogleProject
  • JSONEmbeddedModel
  • MailgunAccount
  • MailjetAccount
  • MandrillAccount
  • OutlookEmailAccount
  • SendgridAccount
  • SESAccount
  • TwitterApp
  • WidgetLayout
  • YahooEmailAccount
  • Overview
  • Package
  • Class
  • Tree
  1: <?php
  2: 
  3: /*****************************************************************************************
  4:  * X2Engine Open Source Edition is a customer relationship management program developed by
  5:  * X2Engine, Inc. Copyright (C) 2011-2016 X2Engine Inc.
  6:  * 
  7:  * This program is free software; you can redistribute it and/or modify it under
  8:  * the terms of the GNU Affero General Public License version 3 as published by the
  9:  * Free Software Foundation with the addition of the following permission added
 10:  * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
 11:  * IN WHICH THE COPYRIGHT IS OWNED BY X2ENGINE, X2ENGINE DISCLAIMS THE WARRANTY
 12:  * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
 13:  * 
 14:  * This program is distributed in the hope that it will be useful, but WITHOUT
 15:  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 16:  * FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more
 17:  * details.
 18:  * 
 19:  * You should have received a copy of the GNU Affero General Public License along with
 20:  * this program; if not, see http://www.gnu.org/licenses or write to the Free
 21:  * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 22:  * 02110-1301 USA.
 23:  * 
 24:  * You can contact X2Engine, Inc. P.O. Box 66752, Scotts Valley,
 25:  * California 95067, USA. or at email address contact@x2engine.com.
 26:  * 
 27:  * The interactive user interfaces in modified source and object code versions
 28:  * of this program must display Appropriate Legal Notices, as required under
 29:  * Section 5 of the GNU Affero General Public License version 3.
 30:  * 
 31:  * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
 32:  * these Appropriate Legal Notices must retain the display of the "Powered by
 33:  * X2Engine" logo. If the display of the logo is not reasonably feasible for
 34:  * technical reasons, the Appropriate Legal Notices must display the words
 35:  * "Powered by X2Engine".
 36:  *****************************************************************************************/
 37: 
 38: Yii::import('application.models.embedded.*');
 39: 
 40: /**
 41:  * Authentication data for using a Google account to send email.
 42:  *
 43:  * Similar to EmailAccount but with certain details already filled in
 44:  * @package application.models.embedded
 45:  * @author Demitri Morgan <demitri@x2engine.com>
 46:  */
 47: class GMailAccount extends EmailAccount {
 48: 
 49:     public $email = '';
 50:     public $imapNoValidate = false;
 51:     public $imapPort = 993;
 52:     public $imapSecurity = 'ssl';
 53:     public $imapServer = 'imap.gmail.com';
 54:     public $password = '';
 55:     public $port = 587;
 56:     public $security = 'tls';
 57:     public $senderName = '';
 58:     public $server = 'smtp.gmail.com';
 59:     public $user = '';
 60: 
 61:     public function attributeLabels(){
 62:         return array(
 63:             'senderName' => Yii::t('app','Sender Name'),
 64:             'email' => Yii::t('app','Google ID'),
 65:             'password' => Yii::t('app','Password'),
 66:             'imapPort' => Yii::t('app','IMAP Port'),
 67:             'imapServer' => Yii::t('app','IMAP Server'),
 68:             'imapSecurity' => Yii::t('app','IMAP Security'),
 69:             'imapNoValidate' => Yii::t('app','Disable SSL Validation'),
 70:         );
 71:     }
 72: 
 73:     public function modelLabel() {
 74:         return Yii::t('app','Google Email Account');
 75:     }
 76: 
 77:     public function renderInput ($attr) {
 78:         switch($attr){
 79:             case 'email':
 80:                 echo '<p class="fieldhelp-thin-small">'.Yii::t('app', '(example@gmail.com)').
 81:                     '</p>';
 82:                 echo CHtml::activeTextField($this, $attr, $this->htmlOptions($attr));
 83:                 break;
 84:             case 'password':
 85:                 echo X2Html::x2ActivePasswordField ($this, $attr, $this->htmlOptions ($attr), true);
 86:                 break;
 87:             default:
 88:                 parent::renderInput ($attr);
 89:         }
 90:     }
 91: 
 92:     public function renderInputs(){
 93:         $this->password = null;
 94:         echo CHtml::activeLabel($this, 'senderName');
 95:         $this->renderInput ('senderName');
 96:         echo CHtml::activeLabel($this, 'email');
 97:         $this->renderInput ('email');
 98:         echo CHtml::activeLabel($this, 'password');
 99:         $this->renderInput ('password');
100:         echo '<br/>';
101:         echo '<br/>';
102:         echo CHtml::tag ('h3', array (), Yii::t('app', 'IMAP Configuration'));
103:         echo '<hr/>';
104:         echo CHtml::activeLabel($this, 'imapPort');
105:         $this->renderInput ('imapPort');
106:         echo CHtml::activeLabel($this, 'imapSecurity');
107:         $this->renderInput ('imapSecurity');
108:         echo CHtml::activeLabel($this, 'imapNoValidate');
109:         $this->renderInput ('imapNoValidate');
110:         echo CHtml::activeLabel($this, 'imapServer');
111:         $this->renderInput ('imapServer');
112:         echo CHtml::errorSummary($this);
113:     }
114: 
115:     public function rules(){
116:         return array(
117:             array('email','email'),
118:             array('senderName,email,password', 'required'),
119:             array('senderName,email,password,imapPort,imapSecurity,imapNoValidate,imapServer', 'safe'),
120:         );
121:     }
122: 
123: }
124: 
125: ?>
126: 
X2CRM Documentation API documentation generated by ApiGen 2.8.0