Scaffold Laravel permissions (Client - Entity) (#2602)

* Wired up Bulk Archive / Delete / Restore button with reactivity on checkbox actions

* Scaffold Laravel permissions (Client - Entity)
This commit is contained in:
David Bomba 2019-01-16 20:28:06 +11:00 committed by GitHub
parent feafbd9826
commit 64a0248f50
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 1950 additions and 1375 deletions

View File

@ -113,7 +113,7 @@ class ClientDatatable extends EntityDatatable
private function buildActionColumn($data)
{
//if(auth()->user()->is_admin())
//if(auth()->user()->isAdmin())
//todo permissions are only mocked here, when user permissions have been implemented this needs to be refactored.
$permissions = [

View File

@ -31,7 +31,7 @@ trait MakesActionMenu
* a Collection of available actions\.
*
* @param Collection $actions collection of possible actions
* @param bool $is_admin boolean defining if user is an administrator
* @param bool $isAdmin boolean defining if user is an administrator
* @return Collection collection of filtered actions
*/
private function checkPermissions(Collection $actions, array $permissions, bool $is_admin) :Collection
@ -50,12 +50,12 @@ trait MakesActionMenu
*
* @param array $actions Array of actions requested
* @param array $permissions Array of user permissions
* @param bool $is_admin Boolean is_admin
* @param bool $isAdmin Boolean isAdmin
* @return Collection collection of filtered actions available to the user
*/
public function filterActions(array $actions, array $permissions, bool $is_admin) :Collection
public function filterActions(array $actions, array $permissions, bool $isAdmin) :Collection
{
return $this->checkPermissions($this->actions()->whereIn('action', $actions), $permissions, $is_admin);
return $this->checkPermissions($this->actions()->whereIn('action', $actions), $permissions, $isAdmin);
}
}

View File

@ -216,7 +216,7 @@ class ClientController extends Controller
//
}
public function builk()
public function bulk()
{
}

View File

@ -108,7 +108,7 @@ class User extends Authenticatable implements MustVerifyEmail
*
* @return bool
*/
public function is_admin()
public function isAdmin()
{
return $this->company()->pivot->is_admin;
}
@ -145,6 +145,11 @@ class User extends Authenticatable implements MustVerifyEmail
return collect($this->permissions())->flatten();
}
public function hasPermission($permission)
{
return $this->permissionsFlat()->contains($permission);
}
/**
* Returns a array of permission for the mobile application
*

View File

@ -0,0 +1,14 @@
<?php
namespace App\Policies;
use App\Models\User;
/**
* Class ClientPolicy
* @package App\Policies
*/
class ClientPolicy extends EntityPolicy
{
}

View File

@ -0,0 +1,67 @@
<?php
namespace App\Policies;
use App\Models\User;
/**
* Class EntityPolicy
* @package App\Policies
*/
class EntityPolicy
{
/**
* Fires before any of the custom policy methods
*
* @param User $user
* @param $ability
* @return bool
*/
public function before($user, $ability) : bool
{
if ($user->isAdmin()) {
return true;
}
}
/**
* Checks if the user has create permissions
* @param User $user
* @param $entity
* @return bool
*/
public function create(User $user, $entity) : bool
{
$entity = strtolower(class_basename($entity));
return $user->hasPermission('create_' . $entity);
}
/**
* Checks if the user has edit permissions
* @param User $user
* @param $entity
* @return bool
*/
public function edit(User $user, $entity) : bool
{
$entity = strtolower(class_basename($entity));
return $user->hasPermission('edit_' . $entity) || $user->owns($entity);
}
/**
* Checks if the user has view permissions
* @param User $user
* @param $entity
* @return bool
*/
public function view(User $user, $entity) : bool
{
$entity = strtolower(class_basename($entity));
return $user->hasPermission('view_' . $entity) || $user->owns($entity);
}
}

View File

@ -2,9 +2,11 @@
namespace App\Providers;
use Illuminate\Support\Facades\Gate;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use App\Models\Client;
use App\Policies\ClientPolicy;
use Auth;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Illuminate\Support\Facades\Gate;
class AuthServiceProvider extends ServiceProvider
{
@ -14,7 +16,7 @@ class AuthServiceProvider extends ServiceProvider
* @var array
*/
protected $policies = [
'App\Model' => 'App\Policies\ModelPolicy',
Client::class => ClientPolicy::class,
];
/**

View File

@ -0,0 +1,17 @@
<?php
namespace App\Utils\Traits;
trait UserSettings
{
public function getEntity(string $entity) : \stdClass
{
return $this->settings()->{$entity};
}
public function getColumnVisibility(string $entity) : \stdClass
{
return $this->settings()->{class_basename($entity)}->datatable->column_visibility;
}
}

511
public/css/ninja.css vendored
View File

@ -1,7 +1,7 @@
@charset "UTF-8";
/*!
* CoreUI - Open Source Dashboard UI Kit
* @version v2.0.18
* @version v2.1.4
* @link https://coreui.io
* Copyright (c) 2018 creativeLabs Łukasz Holeczek
* Licensed under MIT (https://coreui.io/license)
@ -10347,10 +10347,6 @@ a.text-dark:hover, a.text-dark:focus {
box-shadow: 0 0 0 0.2rem rgba(170, 212, 80, 0.5);
}
button {
cursor: pointer;
}
.btn-transparent {
color: #fff;
background-color: transparent;
@ -11699,6 +11695,28 @@ canvas {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.sidebar .nav-link.disabled {
color: #b3b3b3;
cursor: default;
background: transparent;
}
.sidebar .nav-link.disabled .nav-icon {
color: #73818f;
}
.sidebar .nav-link.disabled:hover {
color: #b3b3b3;
}
.sidebar .nav-link.disabled:hover .nav-icon {
color: #73818f;
}
.sidebar .nav-link.disabled:hover.nav-dropdown-toggle::before {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.sidebar .nav-link.nav-link-primary {
background: #20a8d8;
}
@ -11866,6 +11884,19 @@ canvas {
border-left: 0;
}
.sidebar .nav-dropdown.open .nav-link.disabled {
color: #b3b3b3;
background: transparent;
}
.sidebar .nav-dropdown.open .nav-link.disabled:hover {
color: #b3b3b3;
}
.sidebar .nav-dropdown.open .nav-link.disabled:hover .nav-icon {
color: #73818f;
}
.sidebar .nav-dropdown.open > .nav-dropdown-toggle::before {
-webkit-transform: rotate(-90deg);
transform: rotate(-90deg);
@ -11910,6 +11941,7 @@ canvas {
position: relative;
-ms-flex: 0 0 50px;
flex: 0 0 50px;
cursor: pointer;
background-color: rgba(0, 0, 0, 0.2);
border: 0;
}
@ -12022,6 +12054,19 @@ canvas {
.sidebar-minimized .sidebar .nav-item:hover > .nav-link .nav-icon {
color: #fff;
}
.sidebar-minimized .sidebar .nav-item:hover .nav-link.disabled,
.sidebar-minimized .sidebar .nav-item:hover .nav-link :disabled {
background: #2f353a;
}
.sidebar-minimized .sidebar .nav-item:hover .nav-link.disabled .nav-icon,
.sidebar-minimized .sidebar .nav-item:hover .nav-link :disabled .nav-icon {
color: #73818f;
}
.sidebar-minimized .sidebar section :not(.nav-dropdown-items) > .nav-item:last-child::after {
display: block;
margin-bottom: 50px;
content: "";
}
.sidebar-minimized .sidebar .nav-link {
position: relative;
padding-left: 0;
@ -12069,6 +12114,43 @@ canvas {
left: 50px;
display: inline;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav {
list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav .divider {
height: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .sidebar-minimizer::before {
width: 100%;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link {
padding-right: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .nav-icon {
float: right;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .badge {
right: auto;
left: 15px;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link:hover .badge {
display: inline;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav > .nav-dropdown > .nav-dropdown-items {
display: none;
max-height: 1000px;
background: #2f353a;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav > .nav-dropdown:hover {
background: #20a8d8;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav > .nav-dropdown:hover > .nav-dropdown-items {
position: absolute;
left: 0;
display: inline;
}
}
*[dir="rtl"] .sidebar .nav-dropdown-toggle::before {
@ -12099,41 +12181,12 @@ canvas {
}
*[dir="rtl"] .sidebar .sidebar-minimizer::before {
right: unset;
right: auto;
left: 0;
-webkit-transform: rotate(180deg);
transform: rotate(180deg);
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav {
list-style-type: disc;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link {
padding-right: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .nav-icon {
float: right;
padding: 0;
margin: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .badge {
right: auto;
left: 15px;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-dropdown:hover > .nav-dropdown-items {
right: 50px;
left: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .sidebar-minimizer::before {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
*[dir="rtl"] .sidebar-toggler {
margin-right: 0 !important;
}
@ -12838,94 +12891,26 @@ html[dir="rtl"] .aside-menu {
z-index: 1017;
}
html:not([dir="rtl"]) .sidebar-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
}
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
}
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@-webkit-keyframes opacity {
0% {
opacity: 0;
@ -12965,71 +12950,99 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
@media (min-width: 576px) {
html:not([dir="rtl"]) .sidebar-sm-show .sidebar {
html:not([dir="rtl"]) .sidebar-sm-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-sm-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-sm-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-sm-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-sm-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-sm-show .sidebar {
html[dir="rtl"] .sidebar-sm-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-sm-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-sm-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-sm-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-sm-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13051,92 +13064,100 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 576px) and (max-width: 575.98px) {
.sidebar-sm-show .main,
.aside-menu-sm-show .main {
position: relative;
}
.sidebar-sm-show .main::before,
.aside-menu-sm-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
@media (min-width: 768px) {
html:not([dir="rtl"]) .sidebar-md-show .sidebar {
html:not([dir="rtl"]) .sidebar-md-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-md-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-md-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-md-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-md-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-md-show .sidebar {
html[dir="rtl"] .sidebar-md-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-md-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-md-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-md-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-md-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-md-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-md-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-md-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13158,92 +13179,100 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 768px) and (max-width: 575.98px) {
.sidebar-md-show .main,
.aside-menu-md-show .main {
position: relative;
}
.sidebar-md-show .main::before,
.aside-menu-md-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
@media (min-width: 992px) {
html:not([dir="rtl"]) .sidebar-lg-show .sidebar {
html:not([dir="rtl"]) .sidebar-lg-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer {
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
}
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-lg-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-lg-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-lg-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-lg-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-lg-show .sidebar {
html[dir="rtl"] .sidebar-lg-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer {
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
}
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-lg-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-lg-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-lg-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-lg-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13265,92 +13294,100 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 992px) and (max-width: 575.98px) {
.sidebar-lg-show .main,
.aside-menu-lg-show .main {
position: relative;
}
.sidebar-lg-show .main::before,
.aside-menu-lg-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
@media (min-width: 1200px) {
html:not([dir="rtl"]) .sidebar-xl-show .sidebar {
html:not([dir="rtl"]) .sidebar-xl-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer {
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
}
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-xl-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-xl-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-xl-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-xl-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-xl-show .sidebar {
html[dir="rtl"] .sidebar-xl-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer {
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
}
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-xl-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-xl-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-xl-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-xl-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13372,26 +13409,6 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 1200px) and (max-width: 575.98px) {
.sidebar-xl-show .main,
.aside-menu-xl-show .main {
position: relative;
}
.sidebar-xl-show .main::before,
.aside-menu-xl-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
.footer-fixed .app-footer {
position: fixed;
right: 0;

View File

@ -1,7 +1,7 @@
@charset "UTF-8";
/*!
* CoreUI - Open Source Dashboard UI Kit
* @version v2.0.18
* @version v2.1.4
* @link https://coreui.io
* Copyright (c) 2018 creativeLabs Łukasz Holeczek
* Licensed under MIT (https://coreui.io/license)
@ -10347,10 +10347,6 @@ a.text-dark:hover, a.text-dark:focus {
box-shadow: 0 0 0 0.2rem rgba(170, 212, 80, 0.5);
}
button {
cursor: pointer;
}
.btn-transparent {
color: #fff;
background-color: transparent;
@ -11699,6 +11695,28 @@ canvas {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.sidebar .nav-link.disabled {
color: #b3b3b3;
cursor: default;
background: transparent;
}
.sidebar .nav-link.disabled .nav-icon {
color: #73818f;
}
.sidebar .nav-link.disabled:hover {
color: #b3b3b3;
}
.sidebar .nav-link.disabled:hover .nav-icon {
color: #73818f;
}
.sidebar .nav-link.disabled:hover.nav-dropdown-toggle::before {
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 14'%3E%3Cpath fill='%23fff' d='M9.148 2.352l-4.148 4.148 4.148 4.148q0.148 0.148 0.148 0.352t-0.148 0.352l-1.297 1.297q-0.148 0.148-0.352 0.148t-0.352-0.148l-5.797-5.797q-0.148-0.148-0.148-0.352t0.148-0.352l5.797-5.797q0.148-0.148 0.352-0.148t0.352 0.148l1.297 1.297q0.148 0.148 0.148 0.352t-0.148 0.352z'/%3E%3C/svg%3E");
}
.sidebar .nav-link.nav-link-primary {
background: #20a8d8;
}
@ -11866,6 +11884,19 @@ canvas {
border-left: 0;
}
.sidebar .nav-dropdown.open .nav-link.disabled {
color: #b3b3b3;
background: transparent;
}
.sidebar .nav-dropdown.open .nav-link.disabled:hover {
color: #b3b3b3;
}
.sidebar .nav-dropdown.open .nav-link.disabled:hover .nav-icon {
color: #73818f;
}
.sidebar .nav-dropdown.open > .nav-dropdown-toggle::before {
-webkit-transform: rotate(-90deg);
transform: rotate(-90deg);
@ -11910,6 +11941,7 @@ canvas {
position: relative;
-ms-flex: 0 0 50px;
flex: 0 0 50px;
cursor: pointer;
background-color: rgba(0, 0, 0, 0.2);
border: 0;
}
@ -12022,6 +12054,19 @@ canvas {
.sidebar-minimized .sidebar .nav-item:hover > .nav-link .nav-icon {
color: #fff;
}
.sidebar-minimized .sidebar .nav-item:hover .nav-link.disabled,
.sidebar-minimized .sidebar .nav-item:hover .nav-link :disabled {
background: #2f353a;
}
.sidebar-minimized .sidebar .nav-item:hover .nav-link.disabled .nav-icon,
.sidebar-minimized .sidebar .nav-item:hover .nav-link :disabled .nav-icon {
color: #73818f;
}
.sidebar-minimized .sidebar section :not(.nav-dropdown-items) > .nav-item:last-child::after {
display: block;
margin-bottom: 50px;
content: "";
}
.sidebar-minimized .sidebar .nav-link {
position: relative;
padding-left: 0;
@ -12069,6 +12114,43 @@ canvas {
left: 50px;
display: inline;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav {
list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav .divider {
height: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .sidebar-minimizer::before {
width: 100%;
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link {
padding-right: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .nav-icon {
float: right;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .badge {
right: auto;
left: 15px;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link:hover .badge {
display: inline;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav > .nav-dropdown > .nav-dropdown-items {
display: none;
max-height: 1000px;
background: #2f353a;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav > .nav-dropdown:hover {
background: #20a8d8;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav > .nav-dropdown:hover > .nav-dropdown-items {
position: absolute;
left: 0;
display: inline;
}
}
*[dir="rtl"] .sidebar .nav-dropdown-toggle::before {
@ -12099,41 +12181,12 @@ canvas {
}
*[dir="rtl"] .sidebar .sidebar-minimizer::before {
right: unset;
right: auto;
left: 0;
-webkit-transform: rotate(180deg);
transform: rotate(180deg);
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav {
list-style-type: disc;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link {
padding-right: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .nav-icon {
float: right;
padding: 0;
margin: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-link .badge {
right: auto;
left: 15px;
}
*[dir="rtl"] .sidebar-minimized .sidebar .nav-dropdown:hover > .nav-dropdown-items {
right: 50px;
left: 0;
}
*[dir="rtl"] .sidebar-minimized .sidebar .sidebar-minimizer::before {
-webkit-transform: rotate(0deg);
transform: rotate(0deg);
}
*[dir="rtl"] .sidebar-toggler {
margin-right: 0 !important;
}
@ -12838,94 +12891,26 @@ html[dir="rtl"] .aside-menu {
z-index: 1017;
}
html:not([dir="rtl"]) .sidebar-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
}
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
}
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@-webkit-keyframes opacity {
0% {
opacity: 0;
@ -12965,71 +12950,99 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
@media (min-width: 576px) {
html:not([dir="rtl"]) .sidebar-sm-show .sidebar {
html:not([dir="rtl"]) .sidebar-sm-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
html:not([dir="rtl"]) .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-sm-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-sm-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-sm-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-sm-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-sm-show .sidebar {
html[dir="rtl"] .sidebar-sm-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
html[dir="rtl"] .sidebar-sm-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-sm-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-sm-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-sm-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-sm-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-sm-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13051,92 +13064,100 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 576px) and (max-width: 575.98px) {
.sidebar-sm-show .main,
.aside-menu-sm-show .main {
position: relative;
}
.sidebar-sm-show .main::before,
.aside-menu-sm-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
@media (min-width: 768px) {
html:not([dir="rtl"]) .sidebar-md-show .sidebar {
html:not([dir="rtl"]) .sidebar-md-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
html:not([dir="rtl"]) .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-md-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-md-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-md-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-md-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-md-show .sidebar {
html[dir="rtl"] .sidebar-md-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-md-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-md-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-md-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
html[dir="rtl"] .sidebar-md-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-md-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-md-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-md-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-md-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-md-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13158,92 +13179,100 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 768px) and (max-width: 575.98px) {
.sidebar-md-show .main,
.aside-menu-md-show .main {
position: relative;
}
.sidebar-md-show .main::before,
.aside-menu-md-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
@media (min-width: 992px) {
html:not([dir="rtl"]) .sidebar-lg-show .sidebar {
html:not([dir="rtl"]) .sidebar-lg-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer {
html:not([dir="rtl"]) .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
}
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-lg-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-lg-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-lg-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-lg-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-lg-show .sidebar {
html[dir="rtl"] .sidebar-lg-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer {
html[dir="rtl"] .sidebar-lg-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
}
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-lg-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-lg-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-lg-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-lg-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-lg-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13265,92 +13294,100 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 992px) and (max-width: 575.98px) {
.sidebar-lg-show .main,
.aside-menu-lg-show .main {
position: relative;
}
.sidebar-lg-show .main::before,
.aside-menu-lg-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
@media (min-width: 1200px) {
html:not([dir="rtl"]) .sidebar-xl-show .sidebar {
html:not([dir="rtl"]) .sidebar-xl-show .sidebar,
html:not([dir="rtl"]) .sidebar-show .sidebar {
margin-left: 0;
}
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed .app-footer {
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed .app-footer {
margin-left: 200px;
}
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer {
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-left: 150px;
}
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer {
html:not([dir="rtl"]) .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html:not([dir="rtl"]) .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-left: 50px;
}
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed .breadcrumb {
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed .breadcrumb {
left: 200px;
}
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
left: 150px;
}
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html:not([dir="rtl"]) .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html:not([dir="rtl"]) .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
left: 50px;
}
html:not([dir="rtl"]) .aside-menu-show .aside-menu,
html:not([dir="rtl"]) .aside-menu-xl-show .aside-menu {
margin-right: 0;
}
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-show.aside-menu-fixed .app-footer,
html:not([dir="rtl"]) .aside-menu-xl-show.aside-menu-fixed .main,
html:not([dir="rtl"]) .aside-menu-xl-show.aside-menu-fixed .app-footer {
margin-right: 250px;
}
html:not([dir="rtl"]) .aside-menu-show.breadcrumb-fixed .breadcrumb,
html:not([dir="rtl"]) .aside-menu-xl-show.breadcrumb-fixed .breadcrumb {
right: 250px;
}
html[dir="rtl"] .sidebar-xl-show .sidebar {
html[dir="rtl"] .sidebar-xl-show .sidebar,
html[dir="rtl"] .sidebar-show .sidebar {
margin-right: 0;
}
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed .app-footer {
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed .app-footer {
margin-right: 200px;
}
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer {
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-compact .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-compact .app-footer {
margin-right: 150px;
}
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer {
html[dir="rtl"] .sidebar-xl-show.sidebar-fixed.sidebar-minimized .app-footer,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .main,
html[dir="rtl"] .sidebar-show.sidebar-fixed.sidebar-minimized .app-footer {
margin-right: 50px;
}
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed .breadcrumb {
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed .breadcrumb {
right: 200px;
}
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-compact .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-compact .breadcrumb {
right: 150px;
}
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
html[dir="rtl"] .sidebar-xl-show.breadcrumb-fixed.sidebar-minimized .breadcrumb,
html[dir="rtl"] .sidebar-show.breadcrumb-fixed.sidebar-minimized .breadcrumb {
right: 50px;
}
html[dir="rtl"] .aside-menu-show .aside-menu,
html[dir="rtl"] .aside-menu-xl-show .aside-menu {
margin-left: 0;
}
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-show.aside-menu-fixed .app-footer,
html[dir="rtl"] .aside-menu-xl-show.aside-menu-fixed .main,
html[dir="rtl"] .aside-menu-xl-show.aside-menu-fixed .app-footer {
margin-left: 250px;
}
html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb,
html[dir="rtl"] .aside-menu-xl-show.breadcrumb-fixed .breadcrumb {
left: 250px;
}
@ -13372,26 +13409,6 @@ html[dir="rtl"] .aside-menu-show.breadcrumb-fixed .breadcrumb {
}
}
@media (min-width: 1200px) and (max-width: 575.98px) {
.sidebar-xl-show .main,
.aside-menu-xl-show .main {
position: relative;
}
.sidebar-xl-show .main::before,
.aside-menu-xl-show .main::before {
position: absolute;
top: 0;
left: 0;
z-index: 1018;
width: 100%;
height: 100%;
content: "";
background: rgba(0, 0, 0, 0.7);
-webkit-animation: opacity 0.25s;
animation: opacity 0.25s;
}
}
.footer-fixed .app-footer {
position: fixed;
right: 0;

1048
public/js/client_list.js vendored

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,9 @@
:sort-order="sortOrder"
:append-params="moreParams"
:css="css.table"
pagination-path=""
pagination-path=""
@vuetable:checkbox-toggled="toggledCheckBox()"
@vuetable:checkbox-toggled-all="toggledCheckBox()"
@vuetable:pagination-data="onPaginationData"></vuetable>
<div class="vuetable-pagination ui basic segment grid">
@ -37,6 +39,8 @@ import VuetableCss from '../util/VuetableCss'
Vue.use(VueEvents)
declare var bulk_count : number;
export default {
components: {
@ -58,7 +62,9 @@ export default {
this.$events.$on('filter-set', eventData => this.onFilterSet(eventData))
this.$events.$on('filter-reset', e => this.onFilterReset())
console.dir(this.datatable)
this.$events.$on('bulkAction', eventData => this.bulk(eventData))
//this.$events.$on('vuetable:checkbox-toggled-all', eventData => this.checkboxToggled(eventData))
},
beforeMount: function () {
@ -76,21 +82,28 @@ export default {
this.$refs.vuetable.changePage(page)
},
onFilterSet (filterText) {
onFilterSet (filterText) {
this.moreParams = {
'filter': filterText
}
Vue.nextTick( () => this.$refs.vuetable.refresh())
this.moreParams = {
'filter': filterText
}
Vue.nextTick( () => this.$refs.vuetable.refresh())
},
onFilterReset () {
this.moreParams = {}
Vue.nextTick( () => this.$refs.vuetable.refresh())
}
}
},
onFilterReset () {
this.moreParams = {}
Vue.nextTick( () => this.$refs.vuetable.refresh())
},
bulk (eventData){
//console.log(eventData)
//console.dir(this.$refs.vuetable.selectedTo)
},
toggledCheckBox(){
console.log(this.$refs.vuetable.selectedTo.length +' Checkboxes checked')
this.$events.fire('bulk-count', this.$refs.vuetable.selectedTo.length)
}
}
}
</script>

View File

@ -5,13 +5,13 @@
<div class="p-2">
<div class="btn-group">
<button type="button" class="btn btn-primary btn-lg">Archive</button>
<button type="button" class="btn btn-primary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<button type="button" class="btn btn-primary btn-lg" @click="archive" :disabled="bulk_count == 0">{{ trans('texts.archive') }} <span v-if="bulk_count > 0">({{ bulk_count }})</span></button>
<button type="button" class="btn btn-primary dropdown-toggle dropdown-toggle-split" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" :disabled="bulk_count == 0">
<span class="sr-only">Toggle Dropdown</span>
</button>
<div class="dropdown-menu" x-placement="bottom-start" style="position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(81px, 38px, 0px);">
<a class="dropdown-item" href="#">Archive</a>
<a class="dropdown-item" href="#">Delete</a>
<a class="dropdown-item" @click="archive" href="#">{{ trans('texts.archive') }}</a>
<a class="dropdown-item" @click="del" href="#">{{ trans('texts.delete') }}</a>
</div>
</div>
@ -26,7 +26,7 @@
</div>
<div class="p-2">
<button class="btn btn-primary btn-lg ">{{ trans('texts.new_client') }}</button>
<button class="btn btn-primary btn-lg " v-on:click="$emit('bulk','poota')">{{ trans('texts.new_client') }}</button>
</div>
</div>
@ -34,7 +34,30 @@
</template>
<script lang="ts">
export default {
data() {
return {
bulk_count : 0
}
},
mounted() {
console.dir('the number of counts = ' + this.bulk_count)
this.$events.$on('bulk-count', eventData => this.bulkCountUpdated(eventData))
},
methods: {
archive () {
this.$events.fire('bulkAction', 'archive')
},
del () {
this.$events.fire('bulkAction', 'delete')
},
bulkCountUpdated(count) {
this.bulk_count = count
}
}
}
</script>
<style>

View File

@ -3,10 +3,13 @@
namespace Tests\Feature;
use App\Models\Account;
use App\Models\Client;
use App\Models\User;
use App\Utils\Traits\UserSessionAttributes;
use Illuminate\Foundation\Testing\DatabaseTransactions;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Illuminate\Foundation\Testing\WithFaker;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;
use Tests\TestCase;
@ -14,12 +17,12 @@ class LoginTest extends TestCase
{
use DatabaseTransactions;
use UserSessionAttributes;
public function setUp()
{
parent::setUp();
Session::start();
}
public function testLoginFormDisplayed()
@ -120,4 +123,5 @@ class LoginTest extends TestCase
$response->assertStatus(302);
$this->assertGuest();
}
}