More code for rules.

This commit is contained in:
James Cole
2016-01-13 18:34:56 +01:00
parent e9ee93beb7
commit 27aae279e6
9 changed files with 255 additions and 1 deletions

View File

@@ -11,8 +11,14 @@ namespace FireflyIII\Http\Controllers;
use Auth;
use FireflyIII\Http\Requests;
use FireflyIII\Http\Requests\RuleGroupFormRequest;
use FireflyIII\Models\Rule;
use FireflyIII\Models\RuleGroup;
use FireflyIII\Repositories\Rule\RuleRepositoryInterface;
use Input;
use Preferences;
use Session;
use URL;
use View;
/**
@@ -32,6 +38,54 @@ class RuleController extends Controller
View::share('mainTitleIcon', 'fa-random');
}
/**
* @return View
*/
public function createRuleGroup()
{
$subTitleIcon = 'fa-clone';
$subTitle = trans('firefly.make_new_rule_group');
// put previous url in session if not redirect from store (not "create another").
if (Session::get('rule-groups.create.fromStore') !== true) {
Session::put('rule-groups.create.url', URL::previous());
}
Session::forget('accounts.create.fromStore');
Session::flash('gaEventCategory', 'rules');
Session::flash('gaEventAction', 'create-rule-group');
return view('rules.create-rule-group', compact('subTitleIcon', 'what', 'subTitle'));
}
/**
* @param RuleGroupFormRequest $request
* @param RuleRepositoryInterface $repository
*
* @return $this|\Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function storeRuleGroup(RuleGroupFormRequest $request, RuleRepositoryInterface $repository)
{
$data = [
'title' => $request->input('title'),
'description' => $request->input('description'),
'user' => Auth::user()->id,
];
$ruleGroup = $repository->storeRuleGroup($data);
Session::flash('success', trans('firefly.created_new_rule_group', ['title' => $ruleGroup->title]));
Preferences::mark();
if (intval(Input::get('create_another')) === 1) {
// set value so create routine will not overwrite URL:
Session::put('rule-groups.create.fromStore', true);
return redirect(route('rules.rule-group.create'))->withInput();
}
// redirect to previous URL.
return redirect(Session::get('rule-groups.create.url'));
}
/**
* @return View
@@ -54,7 +108,8 @@ class RuleController extends Controller
/**
* @param RuleGroup $ruleGroup
*/
public function editRuleGroup(RuleGroup $ruleGroup) {
public function editRuleGroup(RuleGroup $ruleGroup)
{
}
}