public function testGetUnreadCountForCurrentUserByModelClassName()
 {
     Mission::deleteAll();
     $count = MashableUtil::getUnreadCountForCurrentUserByModelClassName('Mission');
     $this->assertEquals($count, 0);
     $this->makeANewUnreadMissionOwnedByCurrentUser();
     $count = MashableUtil::getUnreadCountForCurrentUserByModelClassName('Mission');
     $this->assertEquals($count, 1);
 }
 private function renderMashableInboxModelsToolbar()
 {
     $activeClass = null;
     if ($this->modelClassName == null) {
         $activeClass = "active";
     }
     $unreadCount = MashableUtil::getUnreadCountMashableInboxForCurrentUser();
     $url = Yii::app()->createUrl($this->moduleId . '/' . $this->controllerId . '/list');
     $label = Zurmo::t('MashableInboxModule', 'Combined');
     $span = ZurmoHtml::tag('span', array("class" => "unread-count"), $unreadCount);
     $zLabel = ZurmoHtml::tag('span', array("class" => "z-label"), $label . $span);
     $content = ZurmoHtml::link($zLabel, $url, array('class' => 'icon-combined ' . $activeClass));
     $combinedInboxesModels = MashableUtil::getModelDataForCurrentUserByInterfaceName('MashableInboxInterface');
     foreach ($combinedInboxesModels as $modelClassName => $modelLabel) {
         $activeClass = null;
         if ($this->modelClassName == $modelClassName) {
             $activeClass = "active";
         }
         $unreadCount = MashableUtil::getUnreadCountForCurrentUserByModelClassName($modelClassName);
         $url = Yii::app()->createUrl($this->moduleId . '/' . $this->controllerId . '/list', array('modelClassName' => $modelClassName));
         $span = ZurmoHtml::tag('span', array("class" => "unread-count"), $unreadCount);
         $zLabel = ZurmoHtml::tag('span', array("class" => "z-label"), $modelLabel . $span);
         $content .= ZurmoHtml::link($zLabel, $url, array('class' => 'icon-' . strtolower($modelClassName) . ' ' . $activeClass));
     }
     return $content;
 }
Example #3
0
 public function actionGetUnreadCount()
 {
     $combinedInboxesModels = MashableUtil::getModelDataForCurrentUserByInterfaceName('MashableInboxInterface');
     foreach ($combinedInboxesModels as $modelClassName => $modelLabel) {
         $data[strtolower($modelClassName)] = MashableUtil::getUnreadCountForCurrentUserByModelClassName($modelClassName);
     }
     echo CJSON::encode($data);
 }
 private function renderMashableInboxModelsToolbar()
 {
     $activeClass = null;
     if ($this->modelClassName == null) {
         $activeClass = "active";
     }
     $unreadCount = MashableUtil::getUnreadCountMashableInboxForCurrentUser();
     $label = Zurmo::t('MashableInboxModule', 'Combined');
     $params = array('label' => $label, 'modelClassName' => null, 'unread' => $unreadCount, 'htmlOptions' => array('class' => $activeClass), 'iconClass' => 'icon-combined');
     $element = new MashableInboxModelMenuActionElement($this->controllerId, $this->moduleId, null, $params);
     $content = $element->render();
     $combinedInboxesModels = MashableUtil::getModelDataForCurrentUserByInterfaceName('MashableInboxInterface');
     foreach ($combinedInboxesModels as $modelClassName => $modelLabel) {
         $activeClass = null;
         if ($this->modelClassName == $modelClassName) {
             $activeClass = "active";
         }
         $unreadCount = MashableUtil::getUnreadCountForCurrentUserByModelClassName($modelClassName);
         $params = array('label' => $modelLabel, 'modelClassName' => $modelClassName, 'htmlOptions' => array('class' => $activeClass), 'unread' => $unreadCount, 'iconClass' => 'icon-' . strtolower($modelClassName));
         $element = new MashableInboxModelMenuActionElement($this->controllerId, $this->moduleId, null, $params);
         $content .= $element->render();
     }
     return $content;
 }