ソースを参照

Stat tree edit (wip)

Vijayakrishnan 3 年 前
コミット
b13eb72375

+ 10 - 0
app/Http/Controllers/StatTreeController.php

@@ -60,6 +60,16 @@ class StatTreeController extends Controller
         return $this->pass($statTree->uid);
     }
 
+    public function updateBasic(Request $request) {
+        $statTree = StatTree::where('uid', $request->input('uid'))->first();
+        if(!$statTree) return $this->fail('Stat tree not found!');
+        $statTree->name = $request->input('name');
+        $statTree->model = $request->input('model');
+        $statTree->slug = $request->input('slug');
+        $statTree->save();
+        return $this->pass();
+    }
+
     public function edit(Request $request, StatTree $statTree) {
         $clauses = Clause::where('model', $statTree->model)->orderBy('position_index')->get();
         return view('app.stat-tree.stat-trees.sub.edit', compact('statTree', 'clauses'));

+ 23 - 0
resources/views/app/stat-tree/stat-trees/single.blade.php

@@ -18,6 +18,29 @@
                             <span>Slug:</span>
                             <span class="font-weight-bold">{{ $statTree->slug }}</span>
                         </div>
+                        <div moe relative wide class="ml-auto">
+                            <a href="#" start show class="btn btn-sm btn-primary text-white">Edit</a>
+                            <form url="{{ route("practice-management.api.statTree.updateBasic") }}">
+                                @csrf
+                                <input type="hidden" name="uid" value="{{$statTree->uid}}">
+                                <div class="mb-2">
+                                    <label class="text-secondary text-sm mb-1">Name *</label>
+                                    <input type="text" class="form-control form-control-sm" name="name" value="{{$statTree->name}}" autofocus required>
+                                </div>
+                                <div class="mb-2">
+                                    <label class="text-secondary text-sm mb-1">Model *</label>
+                                    <input type="text" class="form-control form-control-sm" name="model" value="{{$statTree->model}}" required>
+                                </div>
+                                <div class="mb-2">
+                                    <label class="text-secondary text-sm mb-1">Slug *</label>
+                                    <input type="text" class="form-control form-control-sm" name="slug" value="{{$statTree->slug}}" required>
+                                </div>
+                                <div class="d-flex align-items-center">
+                                    <button class="btn btn-sm btn-primary mr-2" type="button" submit>Save</button>
+                                    <button class="btn btn-sm btn-default mr-2 border" type="button" cancel>Cancel</button>
+                                </div>
+                            </form>
+                        </div>
                     </div>
                     <div>
                         <a href="{{route('practice-management.statTrees.list')}}" class="btn btn-sm btn-primary text-white"><i class="fas fa-network-wired"></i> View All Stat Trees</a>

+ 14 - 0
resources/views/app/stat-tree/stat-trees/sub/edit.blade.php

@@ -174,6 +174,20 @@
                         return false;
                     });
 
+                $('#refresh-counts')
+                    .off('click')
+                    .on('click', function() {
+                        showMask();
+                        $.post("{{ route('practice-management.api.statTree.refreshTreeCountQueries') }}", {
+                            statTreeID: "{{ $statTree->id }}"
+                        }, function (response) {
+                            if(!hasResponseError(response)) {
+                                fastReload()
+                            }
+                        }, 'json');
+                        return false;
+                    });
+
                 initMoes();
             }
             addMCInitializer('stat-tree-edit-page', init, '#statTreeEdit')

+ 1 - 5
resources/views/app/stat-tree/tree-edit-v2.blade.php

@@ -55,11 +55,7 @@ $statTree = \App\Models\StatTree::where('slug', $slug)->first();
 @if(@$statTree)
     <div class="d-flex align-items-baseline mb-2">
         <h6 class="font-weight-bold m-0">{{$statTree->name}}</h6>
-        <div moe relative wide class="ml-3">
-            <a href="#" start show>+ Top Level</a>
-            <form url="#">Foobar</form>
-        </div>
-        <a href="#" class="ml-3">Refresh Counts</a>
+        <a href="#" id="refresh-counts" class="ml-3">Refresh Counts</a>
         <div class="d-none if-changed ml-auto">
             <a href="#" class="btn btn-sm btn-primary text-white" id="btn-save-tree">Save Changes</a>
             <a href="#" class="ml-2 btn btn-sm btn-default border text-dark" onclick="return fastReload()">Reset</a>