public function postGroup($id = null) { if (Input::has('id')) { $group = Group::find(Input::get('id')); if (!$group->isGroupOwner(Auth::user()->id)) { return Response::json($this->growlMessage('You cannot modify a group you do not own.', 'error')); } $message = "Your group has been updated!"; } else { $group = new Group(); $group->status = Group::STATUS_PENDING; $message = "Your group has been created! It must be approved before you can invite others to join or create documents."; } $postData = array('name', 'display_name', 'address1', 'address2', 'city', 'state', 'postal_code', 'phone_number'); foreach ($postData as $field) { $group->{$field} = Input::get($field); } if ($group->validate()) { $group->save(); $group->addMember(Auth::user()->id, Group::ROLE_OWNER); if ($group->status === Group::STATUS_PENDING) { Event::fire(MadisonEvent::VERIFY_REQUEST_GROUP, $group); } return Response::json($this->growlMessage($message, 'success')); } else { return Response::json($this->growlMessage($group->getErrors()->all(), 'error'), 400); } }
public function run() { $group = new Group(); $group->status = Group::STATUS_ACTIVE; $group->name = 'Example Group'; $group->display_name = 'Example Group Display'; $group->address1 = '1234 Somewhere'; $group->city = 'City'; $group->state = 'DC'; $group->postal_code = '12345'; $group->phone_number = '555-555-5555'; $group->save(); $adminEmail = Config::get('madison.seeder.admin_email'); $adminPassword = Config::get('madison.seeder.admin_password'); $userEmail = Config::get('madison.seeder.user_email'); // Login as admin to add members to group $credentials = array('email' => $adminEmail, 'password' => $adminPassword); Auth::attempt($credentials); $admin = User::where('email', '=', $adminEmail)->first(); $user = User::where('email', '=', $userEmail)->first(); $group->addMember($admin->id, Group::ROLE_OWNER); $group->addMember($user->id, Group::ROLE_EDITOR); }