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 an Amazon SES account to send email.
 42:  *
 43:  * Similar to EmailAccount but with certain details already filled in
 44:  * @package application.models.embedded
 45:  */
 46: class SESAccount extends EmailAccount {
 47: 
 48:     public $email = '';
 49:     public $password = '';
 50:     public $port = 587;
 51:     public $security = 'tls';
 52:     public $senderName = '';
 53:     public $server = '';
 54:     public $user = '';
 55: 
 56:     public $sesEndpoints = array(
 57:         'email-smtp.us-east-1.amazonaws.com' => 'US East (N. Virginia)',
 58:         'email-smtp.us-west-2.amazonaws.com' => 'US West (Oregon)',
 59:         'email-smtp.eu-west-1.amazonaws.com' => 'EU (Ireland)',
 60:     );
 61: 
 62:     public function attributeLabels(){
 63:         return array(
 64:             'senderName' => Yii::t('app','Sender Name'),
 65:             'user' => Yii::t('app', 'SMTP Login'),
 66:             'email' => Yii::t('app','Email'),
 67:             'password' => Yii::t('app','SMTP Password'),
 68:             'server' => Yii::t('app', 'Endpoint Region'),
 69:         );
 70:     }
 71: 
 72:     public function modelLabel() {
 73:         return Yii::t('app','Amazon SES Email Account');
 74:     }
 75: 
 76:     public function renderInput ($attr) {
 77:         switch($attr){
 78:             case 'password':
 79:                 echo X2Html::x2ActivePasswordField ($this, $attr, $this->htmlOptions ($attr), true);
 80:                 break;
 81:             case 'server':
 82:                 echo CHtml::activeDropDownList($this, 'server', $this->sesEndpoints, $this->htmlOptions ($attr));
 83:                 break;
 84:             default:
 85:                 parent::renderInput ($attr);
 86:         }
 87:     }
 88: 
 89:     public function renderInputs(){
 90:         $this->password = null;
 91:         echo CHtml::activeLabel($this, 'senderName');
 92:         $this->renderInput ('senderName');
 93:         echo CHtml::activeLabel($this, 'email');
 94:         $this->renderInput ('email');
 95:         echo CHtml::activeLabel($this, 'user');
 96:         $this->renderInput ('user');
 97:         echo CHtml::activeLabel($this, 'password');
 98:         $this->renderInput ('password');
 99:         echo CHtml::activeLabel($this, 'server');
100:         $this->renderInput ('server');
101:         echo '<br/>';
102:         echo CHtml::errorSummary($this);
103:     }
104: 
105:     public function rules(){
106:         return array(
107:             array('email', 'email'),
108:             array('senderName,email,user,password,server', 'required'),
109:             array('senderName,email,user,password,server', 'safe'),
110:         );
111:     }
112: 
113: }
114: 
115: ?>
116: 
X2CRM Documentation API documentation generated by ApiGen 2.8.0