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

  • BaseDocsMassAction
  • CommonFieldsBehavior
  • Expression
  • MassAction
  • MassAddToList
  • MassCompleteAction
  • MassMoveFileSysObjToFolder
  • MassRemoveFromList
  • MassRenameFileSysObj
  • MassUncompleteAction
  • MobileRecentItems
  • ModulePanelItem
  • NewListFromSelection
  • PanelItem
  • QuickCRUDBehavior
  • RecentItemPanelItem
  • ServiceRoutingBehavior
  • SettingsPanelItem
  • X2AddressBehavior
  • X2AuthCache
  • X2BaseListViewBehavior

Exceptions

  • TwitterFeedWidgetException
  • Overview
  • Package
  • Class
  • Tree
  1: <?php
  2: /*****************************************************************************************
  3:  * X2Engine Open Source Edition is a customer relationship management program developed by
  4:  * X2Engine, Inc. Copyright (C) 2011-2016 X2Engine Inc.
  5:  * 
  6:  * This program is free software; you can redistribute it and/or modify it under
  7:  * the terms of the GNU Affero General Public License version 3 as published by the
  8:  * Free Software Foundation with the addition of the following permission added
  9:  * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
 10:  * IN WHICH THE COPYRIGHT IS OWNED BY X2ENGINE, X2ENGINE DISCLAIMS THE WARRANTY
 11:  * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
 12:  * 
 13:  * This program is distributed in the hope that it will be useful, but WITHOUT
 14:  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 15:  * FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more
 16:  * details.
 17:  * 
 18:  * You should have received a copy of the GNU Affero General Public License along with
 19:  * this program; if not, see http://www.gnu.org/licenses or write to the Free
 20:  * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 21:  * 02110-1301 USA.
 22:  * 
 23:  * You can contact X2Engine, Inc. P.O. Box 66752, Scotts Valley,
 24:  * California 95067, USA. or at email address contact@x2engine.com.
 25:  * 
 26:  * The interactive user interfaces in modified source and object code versions
 27:  * of this program must display Appropriate Legal Notices, as required under
 28:  * Section 5 of the GNU Affero General Public License version 3.
 29:  * 
 30:  * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
 31:  * these Appropriate Legal Notices must retain the display of the "Powered by
 32:  * X2Engine" logo. If the display of the logo is not reasonably feasible for
 33:  * technical reasons, the Appropriate Legal Notices must display the words
 34:  * "Powered by X2Engine".
 35:  *****************************************************************************************/
 36: 
 37: class ModulePanelItem extends PanelItem {
 38: 
 39:     public $module;
 40: 
 41:     public function getTitle () {
 42:         return $this->module->getDisplayName ();
 43:     }
 44: 
 45:     public function getId () {
 46:         return $this->module->name;
 47:     }
 48: 
 49:     private $_isSelected;
 50:     public function getIsSelected () {
 51:         if (!isset ($this->_isSelected)) {
 52:             $this->_isSelected = 
 53:                 $this->module->name === 'users' &&
 54:                 Yii::app()->controller instanceof ProfileController &&
 55:                   in_array (Yii::app()->controller->action->getId (), array (
 56:                     'mobileIndex', 
 57:                     'mobileView', 
 58:                   )) ||
 59:                 $this->module->name === 'charts' &&
 60:                   in_array (Yii::app()->controller->action->getId (), array (
 61:                     'mobileChartDashboard', 
 62:                   )) ||
 63:                 $this->module->name === 'x2Activity' &&
 64:                   in_array (Yii::app()->controller->action->getId (), array (
 65:                     'mobileActivity', 
 66:                     'mobilePublisher', 
 67:                     'mobileViewEvent', 
 68:                   )) ||
 69:                 isset (Yii::app()->controller->module) &&
 70:                 isset (Yii::app()->controller->moduleObj) &&
 71:                 (Yii::app()->controller->moduleObj->name === $this->module->name);
 72:         }
 73:         return $this->_isSelected;
 74:     }
 75: 
 76:     public function isSelected () {
 77:     }
 78: 
 79:     public function render () {
 80:         if ($this->isSelected) {
 81:             $this->htmlOptions = X2Html::mergeHtmlOptions ($this->htmlOptions, array (
 82:                 'class' => 'selected',
 83:             ));
 84:         }
 85: 
 86:         $html = CHtml::openTag ('li', $this->htmlOptions);
 87:         $html .= CHtml::openTag (
 88:             'a', X2Html::mergeHtmlOptions (array (
 89:                 'href' => $this->getHref ()
 90:             ), $this->linkHtmlOptions));
 91:         $iconClass = $this->module->custom ? 'custom-module' : lcfirst($this->getId ());
 92:         $html .= "<i class='icon ".$iconClass."'></i>";
 93:         $html .= CHtml::encode ($this->getTitle ());
 94:         $html .= '</a>';
 95:         $html .= '</li>';
 96:         return $html;
 97:     }
 98: 
 99:     public function getHref () {
100:         if ($this->module->name === 'x2Activity') {
101:             return Yii::app()->createAbsoluteUrl (
102:                 $this->module->name.'/profile/mobileActivity');
103:         } elseif ($this->module->name === 'users') {
104:             return Yii::app()->createAbsoluteUrl (
105:                 $this->module->name.'/profile/mobileIndex');
106:         } else {
107:             return Yii::app()->createAbsoluteUrl (
108:                 $this->module->name.'/'.$this->module->name.'/mobileIndex');
109:         }
110:     }
111: 
112: }
113: 
114: ?>
115: 
X2CRM Documentation API documentation generated by ApiGen 2.8.0