當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Portlet::getByLayoutIdAndUserSortedById方法代碼示例

本文整理匯總了PHP中Portlet::getByLayoutIdAndUserSortedById方法的典型用法代碼示例。如果您正苦於以下問題:PHP Portlet::getByLayoutIdAndUserSortedById方法的具體用法?PHP Portlet::getByLayoutIdAndUserSortedById怎麽用?PHP Portlet::getByLayoutIdAndUserSortedById使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Portlet的用法示例。


在下文中一共展示了Portlet::getByLayoutIdAndUserSortedById方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: getPlacedViewTypes

 protected function getPlacedViewTypes()
 {
     $portlets = Portlet::getByLayoutIdAndUserSortedById($this->uniqueLayoutId, Yii::app()->user->userModel->id);
     $placedViewTypes = array();
     foreach ($portlets as $portlet) {
         $placedViewTypes[] = $portlet->viewType;
     }
     return $placedViewTypes;
 }
開發者ID:maruthisivaprasad,項目名稱:zurmo,代碼行數:9,代碼來源:HomeDashboardPortletSelectionView.php

示例2: actionSaveLayout

 /**
  * Save layout changes including:
  *  collapse/show
  *  position change
  *  removed portlets
  *
  */
 public function actionSaveLayout()
 {
     $portlets = Portlet::getByLayoutIdAndUserSortedById($_POST['portletLayoutConfiguration']['uniqueLayoutId'], Yii::app()->user->userModel->id);
     $portletsStillOnLayout = array();
     if (!empty($_POST['portletLayoutConfiguration']['portlets'])) {
         foreach ($_POST['portletLayoutConfiguration']['portlets'] as $key => $portletPostData) {
             $idParts = explode("_", $portletPostData['id']);
             $portlets[$idParts[1]]->column = $portletPostData['column'] + 1;
             $portlets[$idParts[1]]->position = $portletPostData['position'] + 1;
             $portlets[$idParts[1]]->collapsed = BooleanUtil::boolVal($portletPostData['collapsed']);
             $portlets[$idParts[1]]->save();
             $portletsStillOnLayout[$idParts[1]] = $idParts[1];
         }
     }
     foreach ($portlets as $portletId => $portlet) {
         if (!isset($portletsStillOnLayout[$portletId])) {
             $portlet->delete();
         }
     }
 }
開發者ID:youprofit,項目名稱:Zurmo,代碼行數:27,代碼來源:PortletController.php

示例3: pushDetailsAndRelationsViewPortlets

 public static function pushDetailsAndRelationsViewPortlets(User $user, $model)
 {
     $layoutIdPrefix = get_class($model);
     $layoutId = $layoutIdPrefix . self::DETAILS_AND_RELATIONS_VIEW;
     $userLayoutPortlets = Portlet::getByLayoutIdAndUserSortedById($layoutId, $user->id);
     $pushedLayoutPortlets = Portlet::getByLayoutIdAndUserSortedById($layoutId, Yii::app()->user->userModel->id);
     foreach ($userLayoutPortlets as $portlet) {
         $portlet->delete();
         unset($portlet);
     }
     foreach ($pushedLayoutPortlets as $pushedLayoutPortlet) {
         $portlet = new Portlet();
         $portlet->column = $pushedLayoutPortlet->column;
         $portlet->position = $pushedLayoutPortlet->position;
         $portlet->layoutId = $layoutId;
         $portlet->collapsed = $pushedLayoutPortlet->collapsed;
         $portlet->viewType = $pushedLayoutPortlet->viewType;
         $portlet->serializedViewData = $pushedLayoutPortlet->serializedViewData;
         $portlet->user = $user;
         $portlet->save();
     }
 }
開發者ID:maruthisivaprasad,項目名稱:zurmo,代碼行數:22,代碼來源:PushDashboardUtil.php

示例4: testShiftPositionsBasedOnColumnReduction

 public function testShiftPositionsBasedOnColumnReduction()
 {
     $user = User::getByUserName('billy');
     for ($i = 1; $i <= 3; $i++) {
         $portlet = new Portlet();
         $portlet->column = 1;
         $portlet->position = $i;
         $portlet->layoutId = 'shiftTest';
         $portlet->collapsed = true;
         $portlet->viewType = 'RssReader';
         $portlet->user = $user;
         $this->assertTrue($portlet->save());
     }
     for ($i = 1; $i <= 5; $i++) {
         $portlet = new Portlet();
         $portlet->column = 2;
         $portlet->position = $i;
         $portlet->layoutId = 'shiftTest';
         $portlet->collapsed = true;
         $portlet->viewType = 'RssReader';
         $portlet->user = $user;
         $this->assertTrue($portlet->save());
     }
     for ($i = 1; $i <= 4; $i++) {
         $portlet = new Portlet();
         $portlet->column = 3;
         $portlet->position = $i;
         $portlet->layoutId = 'shiftTest';
         $portlet->collapsed = true;
         $portlet->viewType = 'RssReader';
         $portlet->user = $user;
         $this->assertTrue($portlet->save());
     }
     $this->assertEquals(count(Portlet::getByLayoutIdAndUserSortedById('shiftTest', $user->id)), 12);
     $portletCollection = Portlet::getByLayoutIdAndUserSortedByColumnIdAndPosition('shiftTest', $user->id, array());
     Portlet::shiftPositionsBasedOnColumnReduction($portletCollection, 2);
     $portletCollection = Portlet::getByLayoutIdAndUserSortedByColumnIdAndPosition('shiftTest', $user->id, array());
     $this->assertEquals(count($portletCollection), 2);
     $this->assertEquals(count($portletCollection[1]), 7);
     Portlet::shiftPositionsBasedOnColumnReduction($portletCollection, 1);
     $portletCollection = Portlet::getByLayoutIdAndUserSortedByColumnIdAndPosition('shiftTest', $user->id, array());
     $this->assertEquals(count($portletCollection), 1);
     $this->assertEquals(count($portletCollection[1]), 12);
 }
開發者ID:youprofit,項目名稱:Zurmo,代碼行數:44,代碼來源:PortletTest.php

示例5: testDeleteDashboardAndRelatedPortlets

 /**
  * testGetRowsByUserId
  */
 public function testDeleteDashboardAndRelatedPortlets()
 {
     Yii::app()->user->userModel = User::getByUsername('billy');
     $dashboardCount = Dashboard::getCount();
     $this->assertTrue($dashboardCount > 0);
     $user = User::getByUserName('billy');
     Yii::app()->user->userModel = $user;
     $dashboard = new Dashboard();
     $dashboard->name = "Dashboard TESTING";
     $dashboard->layoutId = 3;
     $dashboard->owner = $user;
     $dashboard->layoutType = '100';
     $dashboard->isDefault = false;
     $this->assertTrue($dashboard->save());
     $this->assertEquals(Portlet::getCount(), 0);
     $this->assertEquals(Dashboard::getCount(), $dashboardCount + 1);
     for ($i = 1; $i <= 3; $i++) {
         $portlet = new Portlet();
         $portlet->column = 1;
         $portlet->position = 1 + $i;
         $portlet->layoutId = 'TEST' . $dashboard->layoutId;
         $portlet->collapsed = false;
         $portlet->viewType = 'TasksMyList';
         $portlet->user = $user;
         $this->assertTrue($portlet->save());
     }
     $this->assertEquals(Portlet::getCount(), 3);
     $portlets = Portlet::getByLayoutIdAndUserSortedById('TEST' . $dashboard->layoutId, $user->id);
     foreach ($portlets as $portlet) {
         $portlet->delete();
     }
     $dashboard->delete();
     $this->assertEquals(Portlet::getCount(), 0);
     $this->assertEquals(Dashboard::getCount(), $dashboardCount);
 }
開發者ID:RamaKavanan,項目名稱:InitialVersion,代碼行數:38,代碼來源:DashboardTest.php

示例6: actionDeleteDashboard

 /**
  * Removes dashboard and related portlets
  *
  */
 public function actionDeleteDashboard()
 {
     $id = intval($_GET['dashboardId']);
     $dashboard = Dashboard::getById($id);
     ControllerSecurityUtil::resolveAccessCanCurrentUserDeleteModel($dashboard);
     if ($dashboard->isDefault) {
         //todo: make a specific exception or view for this situation.
         throw new NotSupportedException();
     }
     $portlets = Portlet::getByLayoutIdAndUserSortedById('HomeDashboard' . $id, Yii::app()->user->userModel->id);
     foreach ($portlets as $portlet) {
         $portlet->delete();
         unset($portlet);
     }
     $dashboard->delete();
     unset($dashboard);
     $this->redirect(array('default/index'));
 }
開發者ID:RamaKavanan,項目名稱:InitialVersion,代碼行數:22,代碼來源:DefaultController.php

示例7: testPushLayoutToUsers

 public function testPushLayoutToUsers()
 {
     $super = Yii::app()->user->userModel;
     //Make and Get Five Users
     $users = UserTestHelper::generateBasicUsers(5);
     $this->assertEquals(5, count($users));
     //Remove first portlet from Super's ContactDetailsAndRelationsView
     $defaultLayoutId = 'Contact' . PushDashboardUtil::DETAILS_AND_RELATIONS_VIEW;
     $defaultPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultLayoutId, $super->id);
     if (empty($defaultPortlets)) {
         $metadata = ContactDetailsAndRelationsView::getDefaultMetadata();
         $portletCollection = Portlet::makePortletsUsingMetadataSortedByColumnIdAndPosition($defaultLayoutId, $metadata, $super, null);
         $this->assertNotEmpty($portletCollection);
         Portlet::savePortlets($portletCollection);
         $defaultPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultLayoutId, $super->id);
     }
     $this->assertTrue(count($defaultPortlets) > 0);
     foreach ($defaultPortlets as $portlet) {
         $portlet->delete();
         break;
     }
     $defaultPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultLayoutId, $super->id);
     $deafultPortletViews = array();
     foreach ($defaultPortlets as $portlet) {
         $deafultPortletViews[] = $portlet->viewType;
     }
     //Push super's default ContactDetailsAndRelationsView to five users
     $userIds = array();
     foreach ($users as $user) {
         $userIds[] = $user->id;
     }
     $groupsAndUsers = array();
     $groupsAndUsers['groups'] = array();
     $groupsAndUsers['users'] = $userIds;
     PushDashboardUtil::pushLayoutToUsers(new Contact(false), $groupsAndUsers);
     //Validate portlets of five user's ContactDetailsAndRelationsView with super's ContactDetailsAndRelationsView
     foreach ($users as $user) {
         $userPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultLayoutId, $user->id);
         $this->assertEquals(count($defaultPortlets), count($userPortlets));
         foreach ($userPortlets as $portlet) {
             $this->assertTrue(in_array($portlet->viewType, $deafultPortletViews));
         }
     }
 }
開發者ID:RamaKavanan,項目名稱:InitialVersion,代碼行數:44,代碼來源:PushDashboardUtilTest.php


注:本文中的Portlet::getByLayoutIdAndUserSortedById方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。