diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php
index ff9cfb8..df51717 100755
--- a/app/Http/Controllers/UserController.php
+++ b/app/Http/Controllers/UserController.php
@@ -134,10 +134,50 @@ class UserController extends Controller
$links->title = $title;
$links->button_id = $buttonId;
$links->save();
+ $links->order = ($links->id - 1);
+ $links->save();
return back();
}
+ public function sortLinks(Request $request)
+ {
+ $linkOrders = $request->input("linkOrders", []);
+ $currentPage = $request->input("currentPage", 1);
+ $perPage = $request->input("perPage", 0);
+
+ if ($perPage == 0) {
+ $currentPage = 1;
+ }
+
+ $linkOrders = array_unique(array_filter($linkOrders));
+ if (!$linkOrders || $currentPage < 1) {
+ return response()->json([
+ 'status' => 'ERROR',
+ ]);
+ }
+
+ $newOrder = $perPage * ($currentPage - 1);
+ $linkNewOrders = [];
+ foreach ($linkOrders as $linkId) {
+ if ($linkId < 0) {
+ continue;
+ }
+
+ $linkNewOrders[$linkId] = $newOrder;
+ Link::where("id", $linkId)
+ ->update([
+ 'order' => $newOrder
+ ]);
+ $newOrder++;
+ }
+
+ return response()->json([
+ 'status' => 'OK',
+ 'linkOrders' => $linkNewOrders,
+ ]);
+ }
+
//Count the number of clicks and redirect to link
public function clickNumber(request $request)
{
@@ -165,6 +205,7 @@ class UserController extends Controller
public function showLinks()
{
$userId = Auth::user()->id;
+ $data['pagePage'] = 10;
$data['links'] = Link::select('id', 'link', 'title', 'order', 'click_number', 'up_link', 'links.button_id')->where('user_id', $userId)->orderBy('up_link', 'asc')->orderBy('order', 'asc')->paginate(10);
return view('studio/links', $data);
@@ -174,6 +215,7 @@ class UserController extends Controller
public function showLinks20()
{
$userId = Auth::user()->id;
+ $data['pagePage'] = 20;
$data['links'] = Link::select('id', 'link', 'title', 'order', 'click_number', 'up_link', 'links.button_id')->where('user_id', $userId)->orderBy('up_link', 'asc')->orderBy('order', 'asc')->paginate(20);
return view('studio/links', $data);
@@ -183,6 +225,7 @@ class UserController extends Controller
public function showLinks30()
{
$userId = Auth::user()->id;
+ $data['pagePage'] = 30;
$data['links'] = Link::select('id', 'link', 'title', 'order', 'click_number', 'up_link', 'links.button_id')->where('user_id', $userId)->orderBy('up_link', 'asc')->orderBy('order', 'asc')->paginate(30);
return view('studio/links', $data);
@@ -192,6 +235,7 @@ class UserController extends Controller
public function showLinksAll()
{
$userId = Auth::user()->id;
+ $data['pagePage'] = 0;
$data['links'] = Link::select('id', 'link', 'title', 'order', 'click_number', 'up_link', 'links.button_id')->where('user_id', $userId)->orderBy('up_link', 'asc')->orderBy('order', 'asc')->paginate(10000000000);
return view('studio/links', $data);
diff --git a/img/.gitignore b/img/.gitignore
index 9fae376..ff1a8b8 100644
--- a/img/.gitignore
+++ b/img/.gitignore
@@ -1,3 +1,4 @@
*
!.gitignore
-!user.png
\ No newline at end of file
+!user.png
+!loading.gif
\ No newline at end of file
diff --git a/img/loading.gif b/img/loading.gif
new file mode 100644
index 0000000..b65e941
Binary files /dev/null and b/img/loading.gif differ
diff --git a/resources/views/layouts/sidebar.blade.php b/resources/views/layouts/sidebar.blade.php
index 74d5666..2da7bc5 100755
--- a/resources/views/layouts/sidebar.blade.php
+++ b/resources/views/layouts/sidebar.blade.php
@@ -7,8 +7,10 @@
@include('layouts.analytics')
+
+