protected function createAdminUser() { $admin = $this->dataSource->getAdminUser(); $this->info('Creating admin user ' . $admin['username']); User::unguard(); $user = new User($admin); $user->is_activated = 1; $user->join_time = time(); $user->save(); $user->groups()->sync([1]); }
/** * @param User $user * @param int $amount */ protected function updateDiscussionsCount(User $user, $amount) { $user->discussions_count += $amount; $user->save(); }
protected function importUsers($from, $to) { $this->info('Importing users...'); $to->table('users')->truncate(); $to->table('email_tokens')->truncate(); $to->table('password_tokens')->truncate(); $to->table('access_tokens')->truncate(); $to->table('users_groups')->truncate(); $members = $from->table('member')->get(); $progress = new ProgressBar($this->output, count($members)); foreach ($members as $m) { $preferences = unserialize($m->preferences); $user = new User(); $user->id = $m->memberId; $user->username = $m->username; $user->email = $m->email; $user->is_activated = true; $user->password = ''; $user->join_time = $m->joinTime; $user->last_seen_time = $m->lastActionTime; $user->avatar_path = $m->avatarFormat ? $m->memberId . '.' . $m->avatarFormat : null; $user->username = $m->username; $user->read_time = array_get($preferences, 'markedAllConversationsAsRead'); $user->notification_read_time = array_get($preferences, 'notificationCheckTime'); $user->preferences = ['discloseOnline' => !array_get($preferences, 'hideOnline')]; $user->discussions_count = $m->countConversations; $user->comments_count = $m->countPosts; $user->save(); $this->app->make('Flarum\\Core\\Activity\\ActivitySyncer')->sync(new JoinedActivity($user), [$user]); $progress->advance(); } $progress->finish(); $this->info("\n"); }