mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-06 02:33:48 +00:00
bulk-operations multiSelect items UI v0.1
This commit is contained in:
@@ -5,6 +5,7 @@ namespace App\Http\Controllers;
|
||||
use App\FileManagerFolder;
|
||||
use App\Http\Tools\Guardian;
|
||||
use App\Share;
|
||||
use App\User;
|
||||
use Illuminate\Support\Arr;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
@@ -84,6 +85,9 @@ class FileAccessController extends Controller
|
||||
$this->check_file_access($shared, $file);
|
||||
}
|
||||
|
||||
// Store user download size
|
||||
$request->user()->record_download((int) $file->getRawOriginal('filesize'));
|
||||
|
||||
return $this->download_file($file);
|
||||
}
|
||||
|
||||
@@ -113,6 +117,9 @@ class FileAccessController extends Controller
|
||||
// Check file access
|
||||
$this->check_file_access($shared, $file);
|
||||
|
||||
// Store user download size
|
||||
User::find($shared->user_id)->record_download((int) $file->getRawOriginal('filesize'));
|
||||
|
||||
return $this->download_file($file);
|
||||
}
|
||||
|
||||
|
||||
@@ -58,6 +58,10 @@ class FileSharingController extends Controller
|
||||
->first();
|
||||
|
||||
if ($image) {
|
||||
|
||||
// Store user download size
|
||||
User::find($shared->user_id)->record_download((int) $image->getRawOriginal('filesize'));
|
||||
|
||||
return $this->show_image($image);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -308,6 +308,9 @@ class Editor
|
||||
'user_id' => $user_id,
|
||||
];
|
||||
|
||||
// Store user upload size
|
||||
$request->user()->record_upload($file_size);
|
||||
|
||||
// Return new file
|
||||
return FileManagerFile::create($options);
|
||||
}
|
||||
|
||||
10
app/Traffic.php
Normal file
10
app/Traffic.php
Normal file
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Traffic extends Model
|
||||
{
|
||||
protected $guarded = ['id'];
|
||||
}
|
||||
39
app/User.php
39
app/User.php
@@ -5,6 +5,7 @@ namespace App;
|
||||
use App\Notifications\ResetPassword;
|
||||
use App\Notifications\ResetUserPasswordNotification;
|
||||
use ByteUnits\Metric;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Foundation\Auth\User as Authenticatable;
|
||||
use Illuminate\Notifications\Notifiable;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
@@ -157,10 +158,10 @@ class User extends Authenticatable
|
||||
$is_storage_limit = $storage_limitation ? $storage_limitation : 1;
|
||||
|
||||
// Get user storage usage
|
||||
if (! $is_storage_limit) {
|
||||
if (!$is_storage_limit) {
|
||||
|
||||
return [
|
||||
'used' => $this->used_capacity,
|
||||
'used' => $this->used_capacity,
|
||||
'used_formatted' => Metric::bytes($this->used_capacity)->format(),
|
||||
];
|
||||
}
|
||||
@@ -252,6 +253,40 @@ class User extends Authenticatable
|
||||
$this->notify(new ResetPassword($token));
|
||||
}
|
||||
|
||||
/**
|
||||
* Record user upload filesize
|
||||
*
|
||||
* @param $file_size
|
||||
*/
|
||||
public function record_upload($file_size)
|
||||
{
|
||||
$record = Traffic::whereMonth('created_at', '=', Carbon::now()->month)
|
||||
->firstOrCreate([
|
||||
'user_id' => $this->id,
|
||||
]);
|
||||
|
||||
$record->update([
|
||||
'upload' => $record->upload + $file_size
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Record user download filesize
|
||||
*
|
||||
* @param $file_size
|
||||
*/
|
||||
public function record_download($file_size)
|
||||
{
|
||||
$record = Traffic::whereMonth('created_at', '=', Carbon::now()->month)
|
||||
->firstOrCreate([
|
||||
'user_id' => $this->id,
|
||||
]);
|
||||
|
||||
$record->update([
|
||||
'download' => $record->download + $file_size
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get user favourites folder
|
||||
*
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class CreateTrafficTable extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::create('traffic', function (Blueprint $table) {
|
||||
$table->bigInteger('user_id');
|
||||
$table->bigInteger('upload')->default(0);
|
||||
$table->bigInteger('download')->default(0);
|
||||
$table->timestamps();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
Schema::dropIfExists('traffics');
|
||||
}
|
||||
}
|
||||
@@ -22,28 +22,28 @@
|
||||
"/chunks/contact-us.js": "/chunks/contact-us.js?id=f13ecb6e4405aa7e06d2",
|
||||
"/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js": "/chunks/contact-us~chunks/dynamic-page~chunks/landing-page.js?id=8b11e9c64262b9275963",
|
||||
"/chunks/create-new-password.js": "/chunks/create-new-password.js?id=abb47a424c09ace77d79",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=74ec544ef21261233eb0",
|
||||
"/chunks/dashboard.js": "/chunks/dashboard.js?id=10beadd171f2bb0cf67c",
|
||||
"/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js": "/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plan-subscribers~chunks/plans~chunks/settings-i~0e2a0654.js?id=ffd2f414666d7cc80b9d",
|
||||
"/chunks/database.js": "/chunks/database.js?id=416a5164bdc53c97ea34",
|
||||
"/chunks/dynamic-page.js": "/chunks/dynamic-page.js?id=464c8e70974d492ce7f6",
|
||||
"/chunks/environment-setup.js": "/chunks/environment-setup.js?id=405847df44edd86e301a",
|
||||
"/chunks/files.js": "/chunks/files.js?id=f1d8017665f8cb3090cf",
|
||||
"/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js": "/chunks/files~chunks/settings-subscription~chunks/shared-files~chunks/shared-page~chunks/user-subscription.js?id=8ccd35de575e8a91d02f",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=5e607d74a439b6249d61",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.js": "/chunks/files~chunks/shared-files~chunks/shared-page.js?id=129b569bf928e91c4e87",
|
||||
"/chunks/files~chunks/shared-page.js": "/chunks/files~chunks/shared-page.js?id=b013006caf6a7063b0b8",
|
||||
"/chunks/forgotten-password.js": "/chunks/forgotten-password.js?id=aba8c662fbc234892216",
|
||||
"/chunks/installation-disclaimer.js": "/chunks/installation-disclaimer.js?id=ecceaa6cdf5768826b36",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=248503ac5967fe8370f9",
|
||||
"/chunks/invoices.js": "/chunks/invoices.js?id=60be9963b912e6186a91",
|
||||
"/chunks/landing-page.js": "/chunks/landing-page.js?id=4c3176cc7c1ad3e6f9b7",
|
||||
"/chunks/not-found-shared.js": "/chunks/not-found-shared.js?id=a28320bdc00aeb85409e",
|
||||
"/chunks/page-edit.js": "/chunks/page-edit.js?id=0607b8e16d6678e0b463",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=83f334c575a48c1b0cc6",
|
||||
"/chunks/pages.js": "/chunks/pages.js?id=5cda42ec6d7c22ae4be2",
|
||||
"/chunks/plan.js": "/chunks/plan.js?id=ed865758447ff7e3f2b5",
|
||||
"/chunks/plan-create.js": "/chunks/plan-create.js?id=f4199916eddc63fb1720",
|
||||
"/chunks/plan-delete.js": "/chunks/plan-delete.js?id=2a50cca120ca589f5626",
|
||||
"/chunks/plan-settings.js": "/chunks/plan-settings.js?id=4a691e84a65d9a779d60",
|
||||
"/chunks/plan-subscribers.js": "/chunks/plan-subscribers.js?id=8c85b14979d3fb6c54a3",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=f2ddb594ff1b2812c248",
|
||||
"/chunks/plans.js": "/chunks/plans.js?id=75b0aaea161474383e8a",
|
||||
"/chunks/profile.js": "/chunks/profile.js?id=df174ba95616670c8edb",
|
||||
"/chunks/profile~chunks/settings-password.js": "/chunks/profile~chunks/settings-password.js?id=62c97619d35198767014",
|
||||
"/chunks/purchase-code.js": "/chunks/purchase-code.js?id=1452fb6ed1aa01e4045a",
|
||||
@@ -51,12 +51,12 @@
|
||||
"/chunks/settings-create-payment-methods.js": "/chunks/settings-create-payment-methods.js?id=40d5eed52256ea23edbe",
|
||||
"/chunks/settings-invoices.js": "/chunks/settings-invoices.js?id=bc110f5ee1a5b984fda2",
|
||||
"/chunks/settings-password.js": "/chunks/settings-password.js?id=e318f7536b185dbe6b54",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=9be1d0aa0169eb57e78f",
|
||||
"/chunks/settings-payment-methods.js": "/chunks/settings-payment-methods.js?id=23a1cf3e4183bb09da8d",
|
||||
"/chunks/settings-storage.js": "/chunks/settings-storage.js?id=22e7978fe8a5cb488e52",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=367c9478591c7a4a2889",
|
||||
"/chunks/settings-subscription.js": "/chunks/settings-subscription.js?id=70ac1de089eeb9ce7276",
|
||||
"/chunks/setup-wizard.js": "/chunks/setup-wizard.js?id=7da589bd335deefd5f65",
|
||||
"/chunks/shared-files.js": "/chunks/shared-files.js?id=50538c88a0471fe4db6f",
|
||||
"/chunks/shared-page.js": "/chunks/shared-page.js?id=4c1b302d65112aad96ea",
|
||||
"/chunks/shared-page.js": "/chunks/shared-page.js?id=19379f673bd223a16a91",
|
||||
"/chunks/sign-in.js": "/chunks/sign-in.js?id=703fbd23d18816590337",
|
||||
"/chunks/sign-up.js": "/chunks/sign-up.js?id=cedca52c29abfb3c58f1",
|
||||
"/chunks/stripe-credentials.js": "/chunks/stripe-credentials.js?id=9dec4c59d5a32fb9b855",
|
||||
@@ -73,8 +73,8 @@
|
||||
"/chunks/user-invoices.js": "/chunks/user-invoices.js?id=97d041044c0eee8f8b4b",
|
||||
"/chunks/user-password.js": "/chunks/user-password.js?id=b036eeaa5ef8e798f6dd",
|
||||
"/chunks/user-storage.js": "/chunks/user-storage.js?id=a99910f95c3e39caa78b",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=e8ea1e67f9ac0a835ed0",
|
||||
"/chunks/users.js": "/chunks/users.js?id=cdba7af8fb0cd8e64c40",
|
||||
"/chunks/user-subscription.js": "/chunks/user-subscription.js?id=d6e1f995e0ebc217fc9c",
|
||||
"/chunks/users.js": "/chunks/users.js?id=6db9d47a7bfb4dd138e2",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.1672962443faca7a2623.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.1672962443faca7a2623.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.8ca7286c54052251e57b.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.8ca7286c54052251e57b.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.41d33ecbac7eb11ef0a2.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.41d33ecbac7eb11ef0a2.hot-update.js",
|
||||
@@ -101,5 +101,17 @@
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.c3641dfd1ebb30cbd31a.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.c3641dfd1ebb30cbd31a.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.2c0a2335f261f5eb5911.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.2c0a2335f261f5eb5911.hot-update.js",
|
||||
"/chunks/files.bc6ba25e4cfc1744d7a1.hot-update.js": "/chunks/files.bc6ba25e4cfc1744d7a1.hot-update.js",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.51ae6746cbde12d39b6d.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.51ae6746cbde12d39b6d.hot-update.js"
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.51ae6746cbde12d39b6d.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.51ae6746cbde12d39b6d.hot-update.js",
|
||||
"/js/main.60e370d445809a35a074.hot-update.js": "/js/main.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/dashboard.60e370d445809a35a074.hot-update.js": "/chunks/dashboard.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plans~chunks/settings-payment-methods~chunks/users.js": "/chunks/dashboard~chunks/invoices~chunks/pages~chunks/plans~chunks/settings-payment-methods~chunks/users.js?id=2bb9ebac09457d3b898e",
|
||||
"/chunks/files~chunks/shared-files~chunks/shared-page.60e370d445809a35a074.hot-update.js": "/chunks/files~chunks/shared-files~chunks/shared-page.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/invoices.60e370d445809a35a074.hot-update.js": "/chunks/invoices.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/pages.60e370d445809a35a074.hot-update.js": "/chunks/pages.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/plans.60e370d445809a35a074.hot-update.js": "/chunks/plans.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/settings-payment-methods.60e370d445809a35a074.hot-update.js": "/chunks/settings-payment-methods.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/settings-subscription.60e370d445809a35a074.hot-update.js": "/chunks/settings-subscription.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/settings-subscription~chunks/user-subscription.js": "/chunks/settings-subscription~chunks/user-subscription.js?id=d58c4e02afae33b7cc85",
|
||||
"/chunks/user-subscription.60e370d445809a35a074.hot-update.js": "/chunks/user-subscription.60e370d445809a35a074.hot-update.js",
|
||||
"/chunks/users.60e370d445809a35a074.hot-update.js": "/chunks/users.60e370d445809a35a074.hot-update.js"
|
||||
}
|
||||
|
||||
@@ -171,9 +171,24 @@
|
||||
dragStart(data) {
|
||||
let img = document.createElement('img')
|
||||
img.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
|
||||
<<<<<<< HEAD
|
||||
event.dataTransfer.setDragImage(img, 0, 0)
|
||||
|
||||
this.dragInProgress = true
|
||||
=======
|
||||
|
||||
event.dataTransfer.setDragImage(img, 0, 0)
|
||||
|
||||
/*let elementClone = event.target.cloneNode(true)
|
||||
elementClone.className = 'draged-clone'
|
||||
console.log(elementClone)*/
|
||||
// elementClone.style.backgroundColor = "red"
|
||||
// let element = document.getElementsByClassName('file-item')
|
||||
// element.style.display = "none"
|
||||
// var crt = this.cloneNode(true);
|
||||
// crt.style.backgroundColor = "red";
|
||||
// this.style.display = "none"
|
||||
>>>>>>> 65f7855703c7a163dc2bf3cc05b23469d76d7453
|
||||
|
||||
events.$emit('dragstart', data)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user