当前位置: 首页>>代码示例>>PHP>>正文


PHP Dashboard::setDefaultDashboardForUser方法代码示例

本文整理汇总了PHP中Dashboard::setDefaultDashboardForUser方法的典型用法代码示例。如果您正苦于以下问题:PHP Dashboard::setDefaultDashboardForUser方法的具体用法?PHP Dashboard::setDefaultDashboardForUser怎么用?PHP Dashboard::setDefaultDashboardForUser使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Dashboard的用法示例。


在下文中一共展示了Dashboard::setDefaultDashboardForUser方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testPushDashboardToUsers

 public function testPushDashboardToUsers()
 {
     $super = Yii::app()->user->userModel;
     //Make and Get Five Users
     $users = UserTestHelper::generateBasicUsers(5);
     $this->assertEquals(5, count($users));
     //Remove any one portlet from super's default dashboard
     $defaultDashboards = Dashboard::getDefaultDashboardsByUser($super);
     if (count($defaultDashboards) == 0) {
         $defaultDashboard = Dashboard::setDefaultDashboardForUser($super);
     } else {
         $defaultDashboard = $defaultDashboards[0];
     }
     $defaultDashboardLayoutId = PushDashboardUtil::HOME_DASHBOARD . $defaultDashboard->layoutId;
     $defaultPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultDashboardLayoutId, $super->id);
     if (empty($defaultPortlets)) {
         $metadata = HomeDashboardView::getDefaultMetadata();
         $portletCollection = Portlet::makePortletsUsingMetadataSortedByColumnIdAndPosition($defaultDashboardLayoutId, $metadata, $super, null);
         $this->assertNotEmpty($portletCollection);
         Portlet::savePortlets($portletCollection);
         $defaultPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultDashboardLayoutId, $super->id);
     }
     $this->assertTrue(count($defaultPortlets) > 0);
     foreach ($defaultPortlets as $portlet) {
         $portlet->delete();
         break;
     }
     $defaultPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultDashboardLayoutId, $super->id);
     $deafultPortletViews = array();
     foreach ($defaultPortlets as $portlet) {
         $deafultPortletViews[] = $portlet->viewType;
     }
     //Push super's default dashboard to five users
     $userIds = array();
     foreach ($users as $user) {
         $userIds[] = $user->id;
     }
     $groupsAndUsers = array();
     $groupsAndUsers['groups'] = array();
     $groupsAndUsers['users'] = $userIds;
     PushDashboardUtil::pushDashboardToUsers($defaultDashboard, $groupsAndUsers);
     //Validate and compare portlets of five user's dashboard with super's default dashboard
     foreach ($users as $user) {
         $userPortlets = Portlet::getByLayoutIdAndUserSortedById($defaultDashboardLayoutId, $user->id);
         $this->assertEquals(count($defaultPortlets), count($userPortlets));
         foreach ($userPortlets as $portlet) {
             $this->assertTrue(in_array($portlet->viewType, $deafultPortletViews));
         }
     }
 }
开发者ID:RamaKavanan,项目名称:InitialVersion,代码行数:50,代码来源:PushDashboardUtilTest.php

示例2: getByLayoutIdAndUser

 public static function getByLayoutIdAndUser($layoutId, $user)
 {
     assert('is_integer($layoutId) && $layoutId >= 1');
     assert('$user instanceof User && $user->id > 0');
     $sql = 'select dashboard.id id ' . 'from dashboard, ownedsecurableitem ' . 'where ownedsecurableitem.owner__user_id = ' . $user->id . ' and dashboard.ownedsecurableitem_id = ownedsecurableitem.id ' . ' and layoutid = ' . $layoutId . ' order by layoutId;';
     $ids = R::getCol($sql);
     assert('count($ids) <= 1');
     if (count($ids) == 0) {
         if ($layoutId == Dashboard::DEFAULT_USER_LAYOUT_ID) {
             return Dashboard::setDefaultDashboardForUser($user);
         }
         throw new NotFoundException();
     }
     $bean = R::load(RedBeanModel::getTableName('Dashboard'), $ids[0]);
     assert('$bean === false || $bean instanceof RedBean_OODBBean');
     if ($bean === false) {
         throw new NotFoundException();
     }
     return self::makeModel($bean);
 }
开发者ID:sandeep1027,项目名称:zurmo_,代码行数:20,代码来源:Dashboard.php

示例3: resolveDefaultDashboardByUser

 /**
  * Returns default dashboard for user.
  * Creates and return default dashboard, if no dashboard exists for user
  * @param Dashboard $dashboard
  * @param User $user
  * @return Dashboard
  * @throws FailedToSaveModelException
  */
 public static function resolveDefaultDashboardByUser(Dashboard $dashboard, User $user)
 {
     $userDefaultDashboards = Dashboard::getDefaultDashboardsByUser($user);
     if (count($userDefaultDashboards) == 0) {
         $userDashboard = Dashboard::setDefaultDashboardForUser($user);
     } else {
         $userDashboard = $userDefaultDashboards[0];
     }
     $userDashboard->setTreatCurrentUserAsOwnerForPermissions(true);
     $userDashboard->name = $dashboard->name;
     $userDashboard->layoutType = $dashboard->layoutType;
     $saved = $userDashboard->save();
     if (!$saved) {
         throw new FailedToSaveModelException();
     }
     return $userDashboard;
 }
开发者ID:maruthisivaprasad,项目名称:zurmo,代码行数:25,代码来源:PushDashboardUtil.php


注:本文中的Dashboard::setDefaultDashboardForUser方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。