/** * * Activate CMS INSTANCE * @param WebsiteRequest $request * @param FlatCmService $service * @param WebsiteRepositoryInterface $websiteRepository * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector * @internal param FlatCmService $service * @internal param WebsiteRepositoryInterface $websiteRepository */ public function store(WebsiteRequest $request, FlatCmService $service) { $identifier = str_slug($this->organization->name, "-"); $username = $request->get('username'); $email = $request->get('email'); $password = $request->get('password'); //$this->dispatch(new CreateWebsite($this->organization->id, $identifier, $username, $email, $password)); if ($service->process($identifier, $username, $email, $password)) { $website = Website::create(['identifier' => $identifier, 'username' => $username, 'email' => $email, 'is_active' => true, 'url' => 'http://' . $identifier . '.' . env('CMS_BASE_URL')]); $organization = Organization::findOrFail($this->organization->id); $website->organization()->associate($organization); $website->save(); Flash::success(Lang::get('website.create-success')); } else { Flash: error: Lang::get('website.create-failed'); } return redirect(action('WebsiteController@index')); }
if (empty($website)) { return new Response('', 404); } return json_encode(['name' => $website->name, 'user' => $website->user, 'repo' => $website->repo]); }); $app->post('api/website', function (Request $request) use($app) { # Check if the name already exists. $nameExists = Website::where('name', '=', $request->get('website'))->first(); if ($nameExists) { return redirect()->back(); } # Check if the input's good. if (strlen($request->get('website')) < 1 || strlen($request->get('repo')) < 1 || strlen($request->get('user')) < 1 || strlen($request->get('password')) < 1) { return redirect()->back(); } $website = Website::create(['name' => $request->get('website'), 'password' => Hash::make($request->get('password')), 'repo' => $request->get('repo'), 'user' => $request->get('user')]); $cmd = getenv('CREATE_CMD'); $cmd = str_replace('$1', $website->name . 'x.iili.li', $cmd); $cmd = str_replace('$2', $website->user, $cmd); $cmd = str_replace('$3', $website->repo, $cmd); exec($cmd); return redirect()->to('http://' . $website->name . 'x.iili.li'); }); $app->post('api/website/update', function (Request $request) use($app) { # Check if the name exists. $website = Website::where('name', '=', $request->get('website'))->first(); if (empty($website)) { return redirect()->back(); } if (!Hash::check($request->get('password'), $website->password)) { return redirect()->back();