Passed
Push — master ( 56f21d...a5762d )
by Iman
03:49
created

Step2Handler::makeColumnPhpCode()   C

Complexity

Conditions 7
Paths 18

Size

Total Lines 34
Code Lines 22

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 22
nc 18
nop 0
dl 0
loc 34
c 0
b 0
f 0
cc 7
rs 6.7272
1
<?php
2
3
namespace crocodicstudio\crudbooster\Modules\ModuleGenerator;
4
5
class Step2Handler
6
{
7
    public function showForm($id)
8
    {
9
        $module = ModulesRepo::find($id);
10
11
        $columns = \Schema::getColumnListing($module->table_name);
12
13
        $controllerCode = (FileManipulator::readCtrlContent($module->controller));
14
15
        $data = [];
16
        $data['id'] = $id;
17
        $data['columns'] = $columns;
18
        //$data['table_list'] = \crocodicstudio\crudbooster\helpers\CRUDBooster::listCbTables();
19
        $data['cols'] = ScaffoldingParser::parse($controllerCode, 'col');
20
21
        return view('CbModulesGen::step2', $data);
22
    }
23
24
    public function handleFormSubmit()
25
    {
26
        $id = request('id');
27
        $controller = ModulesRepo::getControllerName($id);
28
        $newCode = PhpColConfig::makeColumnPhpCode();
29
        $code = FileManipulator::readCtrlContent($controller);
30
        $fileResult = FileManipulator::replaceBetweenMark($code, 'COLUMNS', $newCode);
31
32
        FileManipulator::putCtrlContent($controller, $fileResult);
33
34
        return redirect()->route("AdminModulesControllerGetStep3", ["id" => $id]);
35
    }
36
}