From 743547096e073e3d7be890b955273f5e0ec458c0 Mon Sep 17 00:00:00 2001 From: James Cole Date: Sat, 12 Aug 2017 07:47:42 +0200 Subject: [PATCH] Various code cleanup --- app/Console/Commands/DecryptAttachment.php | 3 +- .../Controllers/Import/BankController.php | 10 +- .../Controllers/Import/FileController.php | 38 +- app/Http/Controllers/TagController.php | 14 +- app/Import/Storage/ImportStorage.php | 1 + .../AttachmentRepositoryInterface.php | 2 +- app/Services/Password/Verifier.php | 1 + .../Configuration/ConfigurationInterface.php | 14 +- .../Import/Configuration/Csv/Initial.php | 20 +- app/Support/Import/Configuration/Csv/Map.php | 20 +- .../Import/Configuration/Csv/Roles.php | 2 +- .../Prerequisites/PrerequisitesInterface.php | 14 +- config/upgrade.php | 1 + public/css/daterangepicker.css | 515 +- public/js/ff/firefly.js | 4 +- public/js/ff/import/status.js | 7 +- public/js/ff/intro/intro.js | 2 +- public/js/ff/piggy-banks/index.js | 1 + public/js/ff/rules/index.js | 2 +- public/js/ff/tags/show.js | 1 + public/js/ff/transactions/list.js | 1 + public/js/lib/bootstrap-multiselect.js | 306 +- public/js/lib/bootstrap-sortable.js | 24 +- public/js/lib/daterangepicker.js | 293 +- public/lib/adminlte/css/AdminLTE.css | 5798 ++++++++++------- .../adminlte/css/skins/skin-blue-light.css | 188 +- public/lib/adminlte/js/app.js | 1246 ++-- resources/views/accounts/edit.twig | 2 +- resources/views/auth/register.twig | 6 +- resources/views/budgets/show.twig | 12 +- resources/views/layout/default.twig | 7 +- resources/views/layout/empty.twig | 6 +- resources/views/layout/guest.twig | 6 +- resources/views/piggy-banks/index.twig | 2 +- resources/views/transactions/mass/edit.twig | 3 +- resources/views/transactions/show.twig | 12 +- .../Chart/BudgetControllerTest.php | 6 +- .../Controllers/NewUserControllerTest.php | 6 +- .../Transaction/SingleControllerTest.php | 3 +- 39 files changed, 4885 insertions(+), 3714 deletions(-) diff --git a/app/Console/Commands/DecryptAttachment.php b/app/Console/Commands/DecryptAttachment.php index cf1c2c7d0a..d1ffbdb8c6 100644 --- a/app/Console/Commands/DecryptAttachment.php +++ b/app/Console/Commands/DecryptAttachment.php @@ -34,7 +34,8 @@ class DecryptAttachment extends Command * * @var string */ - protected $signature = 'firefly:decrypt-attachment {id:The ID of the attachment.} {name:The file name of the attachment.} + protected $signature + = 'firefly:decrypt-attachment {id:The ID of the attachment.} {name:The file name of the attachment.} {directory:Where the file must be stored.}'; diff --git a/app/Http/Controllers/Import/BankController.php b/app/Http/Controllers/Import/BankController.php index 9aa94c654f..e335316d00 100644 --- a/app/Http/Controllers/Import/BankController.php +++ b/app/Http/Controllers/Import/BankController.php @@ -18,6 +18,11 @@ use FireflyIII\Support\Import\Prerequisites\PrerequisitesInterface; class BankController extends Controller { + public function postPrerequisites() + { + + } + /** * @param string $bank */ @@ -31,6 +36,7 @@ class BankController extends Controller if ($object->hasPrerequisites()) { $view = $object->getView(); $parameters = $object->getViewParameters(); + return view($view, $parameters); } @@ -40,8 +46,4 @@ class BankController extends Controller } - public function postPrerequisites() { - - } - } \ No newline at end of file diff --git a/app/Http/Controllers/Import/FileController.php b/app/Http/Controllers/Import/FileController.php index e2075c002e..da8c5c76e5 100644 --- a/app/Http/Controllers/Import/FileController.php +++ b/app/Http/Controllers/Import/FileController.php @@ -56,26 +56,6 @@ class FileController extends Controller ); } - - /** - * This is step 1. Upload a file. - * - * @return View - */ - public function index() - { - $subTitle = trans('firefly.import_index_sub_title'); - $subTitleIcon = 'fa-home'; - $importFileTypes = []; - $defaultImportType = config('firefly.default_import_format'); - - foreach (array_keys(config('firefly.import_formats')) as $type) { - $importFileTypes[$type] = trans('firefly.import_file_type_' . $type); - } - - return view('import.file.index', compact('subTitle', 'subTitleIcon', 'importFileTypes', 'defaultImportType')); - } - /** * This is step 3. This repeats until the job is configured. * @@ -140,6 +120,24 @@ class FileController extends Controller } + /** + * This is step 1. Upload a file. + * + * @return View + */ + public function index() + { + $subTitle = trans('firefly.import_index_sub_title'); + $subTitleIcon = 'fa-home'; + $importFileTypes = []; + $defaultImportType = config('firefly.default_import_format'); + + foreach (array_keys(config('firefly.import_formats')) as $type) { + $importFileTypes[$type] = trans('firefly.import_file_type_' . $type); + } + + return view('import.file.index', compact('subTitle', 'subTitleIcon', 'importFileTypes', 'defaultImportType')); + } /** * This is step 2. It creates an Import Job. Stores the import. diff --git a/app/Http/Controllers/TagController.php b/app/Http/Controllers/TagController.php index 73c9cfdfdf..368feae249 100644 --- a/app/Http/Controllers/TagController.php +++ b/app/Http/Controllers/TagController.php @@ -78,11 +78,11 @@ class TagController extends Controller } /** - * @param Request $request + * Create a new tag. * * @return View */ - public function create(Request $request) + public function create() { $subTitle = trans('firefly.new_tag'); $subTitleIcon = 'fa-tag'; @@ -100,6 +100,8 @@ class TagController extends Controller } /** + * Delete a tag + * * @param Tag $tag * * @return View @@ -134,13 +136,13 @@ class TagController extends Controller } /** - * @param Tag $tag + * Edit a tag * - * @param TagRepositoryInterface $repository + * @param Tag $tag * * @return View */ - public function edit(Tag $tag, TagRepositoryInterface $repository) + public function edit(Tag $tag) { $subTitle = trans('firefly.edit_tag', ['tag' => $tag->tag]); $subTitleIcon = 'fa-tag'; @@ -158,6 +160,8 @@ class TagController extends Controller } /** + * View all tags + * * @param TagRepositoryInterface $repository * * @return View diff --git a/app/Import/Storage/ImportStorage.php b/app/Import/Storage/ImportStorage.php index a9cfd0e759..eea594fdbf 100644 --- a/app/Import/Storage/ImportStorage.php +++ b/app/Import/Storage/ImportStorage.php @@ -278,6 +278,7 @@ class ImportStorage } Log::debug('getForeignCurrencyId: journal has no foreign currency.'); + // return null in other cases. return null; } diff --git a/app/Repositories/Attachment/AttachmentRepositoryInterface.php b/app/Repositories/Attachment/AttachmentRepositoryInterface.php index 6c76e4ebfd..84c130fecc 100644 --- a/app/Repositories/Attachment/AttachmentRepositoryInterface.php +++ b/app/Repositories/Attachment/AttachmentRepositoryInterface.php @@ -52,7 +52,7 @@ interface AttachmentRepositoryInterface * * @return Attachment */ - public function findWithoutUser(int $id):Attachment; + public function findWithoutUser(int $id): Attachment; /** * @return Collection diff --git a/app/Services/Password/Verifier.php b/app/Services/Password/Verifier.php index 446a67b813..0c3d4c2f71 100644 --- a/app/Services/Password/Verifier.php +++ b/app/Services/Password/Verifier.php @@ -20,6 +20,7 @@ interface Verifier { /** * Verify the given password against (some) service. + * * @param string $password * * @return bool diff --git a/app/Support/Import/Configuration/ConfigurationInterface.php b/app/Support/Import/Configuration/ConfigurationInterface.php index 83a8275021..2ab9dc3420 100644 --- a/app/Support/Import/Configuration/ConfigurationInterface.php +++ b/app/Support/Import/Configuration/ConfigurationInterface.php @@ -27,6 +27,13 @@ interface ConfigurationInterface */ public function getData(): array; + /** + * Return possible warning to user. + * + * @return string + */ + public function getWarningMessage(): string; + /** * @param ImportJob $job * @@ -43,11 +50,4 @@ interface ConfigurationInterface */ public function storeConfiguration(array $data): bool; - /** - * Return possible warning to user. - * - * @return string - */ - public function getWarningMessage(): string; - } diff --git a/app/Support/Import/Configuration/Csv/Initial.php b/app/Support/Import/Configuration/Csv/Initial.php index 6b4923f3bc..1c3363eac1 100644 --- a/app/Support/Import/Configuration/Csv/Initial.php +++ b/app/Support/Import/Configuration/Csv/Initial.php @@ -61,6 +61,16 @@ class Initial implements ConfigurationInterface return $data; } + /** + * Return possible warning to user. + * + * @return string + */ + public function getWarningMessage(): string + { + return ''; + } + /** * @param ImportJob $job * @@ -135,14 +145,4 @@ class Initial implements ConfigurationInterface return $config; } - - /** - * Return possible warning to user. - * - * @return string - */ - public function getWarningMessage(): string - { - return ''; - } } diff --git a/app/Support/Import/Configuration/Csv/Map.php b/app/Support/Import/Configuration/Csv/Map.php index b22638369b..cad59d1dd2 100644 --- a/app/Support/Import/Configuration/Csv/Map.php +++ b/app/Support/Import/Configuration/Csv/Map.php @@ -106,6 +106,16 @@ class Map implements ConfigurationInterface } + /** + * Return possible warning to user. + * + * @return string + */ + public function getWarningMessage(): string + { + return ''; + } + /** * @param ImportJob $job * @@ -268,14 +278,4 @@ class Map implements ConfigurationInterface return $column; } - - /** - * Return possible warning to user. - * - * @return string - */ - public function getWarningMessage(): string - { - return ''; - } } diff --git a/app/Support/Import/Configuration/Csv/Roles.php b/app/Support/Import/Configuration/Csv/Roles.php index ebb5299a9a..eb1d49ea3e 100644 --- a/app/Support/Import/Configuration/Csv/Roles.php +++ b/app/Support/Import/Configuration/Csv/Roles.php @@ -262,7 +262,7 @@ class Roles implements ConfigurationInterface $this->warning = ''; } if ($assigned === 0 || !$hasAmount) { - $this->warning = trans('csv.roles_warning'); + $this->warning = strval(trans('csv.roles_warning')); } return true; diff --git a/app/Support/Import/Prerequisites/PrerequisitesInterface.php b/app/Support/Import/Prerequisites/PrerequisitesInterface.php index 9a79ef3003..56c7186f82 100644 --- a/app/Support/Import/Prerequisites/PrerequisitesInterface.php +++ b/app/Support/Import/Prerequisites/PrerequisitesInterface.php @@ -16,13 +16,6 @@ use FireflyIII\User; interface PrerequisitesInterface { - /** - * Set the user for this Prerequisites-routine. Class is expected to implement and save this. - * - * @param User $user - */ - public function setUser(User $user): void; - /** * Returns view name that allows user to fill in prerequisites. * @@ -44,4 +37,11 @@ interface PrerequisitesInterface * @return bool */ public function hasPrerequisites(): bool; + + /** + * Set the user for this Prerequisites-routine. Class is expected to implement and save this. + * + * @param User $user + */ + public function setUser(User $user): void; } \ No newline at end of file diff --git a/config/upgrade.php b/config/upgrade.php index 59f3eb25c2..b36bc9dd98 100644 --- a/config/upgrade.php +++ b/config/upgrade.php @@ -17,6 +17,7 @@ return [ [ '4.3' => 'Make sure you run the migrations and clear your cache. If you need more help, please check Github or the Firefly III website.', '4.6.3' => 'This will be the last version to require PHP7.0. Future versions will require PHP7.1 minimum.', + '4.6.4' => 'This version of Firefly III requires PHP7.1.' ], 'install' => [ diff --git a/public/css/daterangepicker.css b/public/css/daterangepicker.css index 86f4b775e9..5dd276bc2d 100755 --- a/public/css/daterangepicker.css +++ b/public/css/daterangepicker.css @@ -1,141 +1,213 @@ .daterangepicker { - position: absolute; - color: inherit; - background-color: #fff; - border-radius: 4px; - width: 278px; - padding: 4px; - margin-top: 1px; - top: 100px; - left: 20px; - /* Calendars */ } - .daterangepicker:before, .daterangepicker:after { + position: absolute; + color: inherit; + background-color: #fff; + border-radius: 4px; + width: 278px; + padding: 4px; + margin-top: 1px; + top: 100px; + left: 20px; + /* Calendars */ +} + +.daterangepicker:before, .daterangepicker:after { position: absolute; display: inline-block; border-bottom-color: rgba(0, 0, 0, 0.2); - content: ''; } - .daterangepicker:before { + content: ''; +} + +.daterangepicker:before { top: -7px; border-right: 7px solid transparent; border-left: 7px solid transparent; - border-bottom: 7px solid #ccc; } - .daterangepicker:after { + border-bottom: 7px solid #ccc; +} + +.daterangepicker:after { top: -6px; border-right: 6px solid transparent; border-bottom: 6px solid #fff; - border-left: 6px solid transparent; } - .daterangepicker.opensleft:before { - right: 9px; } - .daterangepicker.opensleft:after { - right: 10px; } - .daterangepicker.openscenter:before { + border-left: 6px solid transparent; +} + +.daterangepicker.opensleft:before { + right: 9px; +} + +.daterangepicker.opensleft:after { + right: 10px; +} + +.daterangepicker.openscenter:before { left: 0; right: 0; width: 0; margin-left: auto; - margin-right: auto; } - .daterangepicker.openscenter:after { + margin-right: auto; +} + +.daterangepicker.openscenter:after { left: 0; right: 0; width: 0; margin-left: auto; - margin-right: auto; } - .daterangepicker.opensright:before { - left: 9px; } - .daterangepicker.opensright:after { - left: 10px; } - .daterangepicker.dropup { - margin-top: -5px; } - .daterangepicker.dropup:before { - top: initial; - bottom: -7px; - border-bottom: initial; - border-top: 7px solid #ccc; } - .daterangepicker.dropup:after { - top: initial; - bottom: -6px; - border-bottom: initial; - border-top: 6px solid #fff; } - .daterangepicker.dropdown-menu { + margin-right: auto; +} + +.daterangepicker.opensright:before { + left: 9px; +} + +.daterangepicker.opensright:after { + left: 10px; +} + +.daterangepicker.dropup { + margin-top: -5px; +} + +.daterangepicker.dropup:before { + top: initial; + bottom: -7px; + border-bottom: initial; + border-top: 7px solid #ccc; +} + +.daterangepicker.dropup:after { + top: initial; + bottom: -6px; + border-bottom: initial; + border-top: 6px solid #fff; +} + +.daterangepicker.dropdown-menu { max-width: none; - z-index: 3001; } - .daterangepicker.single .ranges, .daterangepicker.single .calendar { - float: none; } - .daterangepicker.show-calendar .calendar { - display: block; } - .daterangepicker .calendar { + z-index: 3001; +} + +.daterangepicker.single .ranges, .daterangepicker.single .calendar { + float: none; +} + +.daterangepicker.show-calendar .calendar { + display: block; +} + +.daterangepicker .calendar { display: none; max-width: 270px; - margin: 4px; } - .daterangepicker .calendar.single .calendar-table { - border: none; } - .daterangepicker .calendar th, .daterangepicker .calendar td { - white-space: nowrap; - text-align: center; - min-width: 32px; } - .daterangepicker .calendar-table { + margin: 4px; +} + +.daterangepicker .calendar.single .calendar-table { + border: none; +} + +.daterangepicker .calendar th, .daterangepicker .calendar td { + white-space: nowrap; + text-align: center; + min-width: 32px; +} + +.daterangepicker .calendar-table { border: 1px solid #fff; padding: 4px; border-radius: 4px; - background-color: #fff; } - .daterangepicker table { + background-color: #fff; +} + +.daterangepicker table { width: 100%; - margin: 0; } - .daterangepicker td, .daterangepicker th { + margin: 0; +} + +.daterangepicker td, .daterangepicker th { text-align: center; width: 20px; height: 20px; border-radius: 4px; border: 1px solid transparent; white-space: nowrap; - cursor: pointer; } - .daterangepicker td.available:hover, .daterangepicker th.available:hover { - background-color: #eee; - border-color: transparent; - color: inherit; } - .daterangepicker td.week, .daterangepicker th.week { - font-size: 80%; - color: #ccc; } - .daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date { + cursor: pointer; +} + +.daterangepicker td.available:hover, .daterangepicker th.available:hover { + background-color: #eee; + border-color: transparent; + color: inherit; +} + +.daterangepicker td.week, .daterangepicker th.week { + font-size: 80%; + color: #ccc; +} + +.daterangepicker td.off, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date, .daterangepicker td.off.end-date { background-color: #fff; border-color: transparent; - color: #999; } - .daterangepicker td.in-range { + color: #999; +} + +.daterangepicker td.in-range { background-color: #ebf4f8; border-color: transparent; color: #000; - border-radius: 0; } - .daterangepicker td.start-date { - border-radius: 4px 0 0 4px; } - .daterangepicker td.end-date { - border-radius: 0 4px 4px 0; } - .daterangepicker td.start-date.end-date { - border-radius: 4px; } - .daterangepicker td.active, .daterangepicker td.active:hover { + border-radius: 0; +} + +.daterangepicker td.start-date { + border-radius: 4px 0 0 4px; +} + +.daterangepicker td.end-date { + border-radius: 0 4px 4px 0; +} + +.daterangepicker td.start-date.end-date { + border-radius: 4px; +} + +.daterangepicker td.active, .daterangepicker td.active:hover { background-color: #357ebd; border-color: transparent; - color: #fff; } - .daterangepicker th.month { - width: auto; } - .daterangepicker td.disabled, .daterangepicker option.disabled { + color: #fff; +} + +.daterangepicker th.month { + width: auto; +} + +.daterangepicker td.disabled, .daterangepicker option.disabled { color: #999; cursor: not-allowed; - text-decoration: line-through; } - .daterangepicker select.monthselect, .daterangepicker select.yearselect { + text-decoration: line-through; +} + +.daterangepicker select.monthselect, .daterangepicker select.yearselect { font-size: 12px; padding: 1px; height: auto; margin: 0; - cursor: default; } - .daterangepicker select.monthselect { + cursor: default; +} + +.daterangepicker select.monthselect { margin-right: 2%; - width: 56%; } - .daterangepicker select.yearselect { - width: 40%; } - .daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect { + width: 56%; +} + +.daterangepicker select.yearselect { + width: 40%; +} + +.daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect, .daterangepicker select.ampmselect { width: 50px; - margin-bottom: 0; } - .daterangepicker .input-mini { + margin-bottom: 0; +} + +.daterangepicker .input-mini { border: 1px solid #ccc; border-radius: 4px; color: #555; @@ -145,43 +217,62 @@ vertical-align: middle; margin: 0 0 5px 0; padding: 0 6px 0 28px; - width: 100%; } - .daterangepicker .input-mini.active { - border: 1px solid #08c; - border-radius: 4px; } - .daterangepicker .daterangepicker_input { - position: relative; } - .daterangepicker .daterangepicker_input i { - position: absolute; - left: 8px; - top: 8px; } - .daterangepicker.rtl .input-mini { + width: 100%; +} + +.daterangepicker .input-mini.active { + border: 1px solid #08c; + border-radius: 4px; +} + +.daterangepicker .daterangepicker_input { + position: relative; +} + +.daterangepicker .daterangepicker_input i { + position: absolute; + left: 8px; + top: 8px; +} + +.daterangepicker.rtl .input-mini { padding-right: 28px; - padding-left: 6px; } - .daterangepicker.rtl .daterangepicker_input i { + padding-left: 6px; +} + +.daterangepicker.rtl .daterangepicker_input i { left: auto; - right: 8px; } - .daterangepicker .calendar-time { + right: 8px; +} + +.daterangepicker .calendar-time { text-align: center; margin: 5px auto; line-height: 30px; position: relative; - padding-left: 28px; } - .daterangepicker .calendar-time select.disabled { - color: #ccc; - cursor: not-allowed; } + padding-left: 28px; +} + +.daterangepicker .calendar-time select.disabled { + color: #ccc; + cursor: not-allowed; +} .ranges { - font-size: 11px; - float: none; - margin: 4px; - text-align: left; } - .ranges ul { + font-size: 11px; + float: none; + margin: 4px; + text-align: left; +} + +.ranges ul { list-style: none; margin: 0 auto; padding: 0; - width: 100%; } - .ranges li { + width: 100%; +} + +.ranges li { font-size: 13px; background-color: #f5f5f5; border: 1px solid #f5f5f5; @@ -189,81 +280,139 @@ color: #08c; padding: 3px 12px; margin-bottom: 8px; - cursor: pointer; } - .ranges li:hover { - background-color: #08c; - border: 1px solid #08c; - color: #fff; } - .ranges li.active { - background-color: #08c; - border: 1px solid #08c; - color: #fff; } + cursor: pointer; +} + +.ranges li:hover { + background-color: #08c; + border: 1px solid #08c; + color: #fff; +} + +.ranges li.active { + background-color: #08c; + border: 1px solid #08c; + color: #fff; +} /* Larger Screen Styling */ @media (min-width: 564px) { - .daterangepicker { - width: auto; } + .daterangepicker { + width: auto; + } + .daterangepicker .ranges ul { - width: 160px; } + width: 160px; + } + .daterangepicker.single .ranges ul { - width: 100%; } + width: 100%; + } + .daterangepicker.single .calendar.left { - clear: none; } + clear: none; + } + .daterangepicker.single.ltr .ranges, .daterangepicker.single.ltr .calendar { - float: left; } + float: left; + } + .daterangepicker.single.rtl .ranges, .daterangepicker.single.rtl .calendar { - float: right; } + float: right; + } + .daterangepicker.ltr { - direction: ltr; - text-align: left; } - .daterangepicker.ltr .calendar.left { + direction: ltr; + text-align: left; + } + + .daterangepicker.ltr .calendar.left { clear: left; - margin-right: 0; } - .daterangepicker.ltr .calendar.left .calendar-table { - border-right: none; - border-top-right-radius: 0; - border-bottom-right-radius: 0; } - .daterangepicker.ltr .calendar.right { - margin-left: 0; } - .daterangepicker.ltr .calendar.right .calendar-table { - border-left: none; - border-top-left-radius: 0; - border-bottom-left-radius: 0; } - .daterangepicker.ltr .left .daterangepicker_input { - padding-right: 12px; } - .daterangepicker.ltr .calendar.left .calendar-table { - padding-right: 12px; } - .daterangepicker.ltr .ranges, .daterangepicker.ltr .calendar { - float: left; } + margin-right: 0; + } + + .daterangepicker.ltr .calendar.left .calendar-table { + border-right: none; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + .daterangepicker.ltr .calendar.right { + margin-left: 0; + } + + .daterangepicker.ltr .calendar.right .calendar-table { + border-left: none; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + + .daterangepicker.ltr .left .daterangepicker_input { + padding-right: 12px; + } + + .daterangepicker.ltr .calendar.left .calendar-table { + padding-right: 12px; + } + + .daterangepicker.ltr .ranges, .daterangepicker.ltr .calendar { + float: left; + } + .daterangepicker.rtl { - direction: rtl; - text-align: right; } - .daterangepicker.rtl .calendar.left { - clear: right; - margin-left: 0; } - .daterangepicker.rtl .calendar.left .calendar-table { - border-left: none; - border-top-left-radius: 0; - border-bottom-left-radius: 0; } - .daterangepicker.rtl .calendar.right { - margin-right: 0; } - .daterangepicker.rtl .calendar.right .calendar-table { - border-right: none; - border-top-right-radius: 0; - border-bottom-right-radius: 0; } - .daterangepicker.rtl .left .daterangepicker_input { - padding-left: 12px; } - .daterangepicker.rtl .calendar.left .calendar-table { - padding-left: 12px; } - .daterangepicker.rtl .ranges, .daterangepicker.rtl .calendar { + direction: rtl; text-align: right; - float: right; } } + } + + .daterangepicker.rtl .calendar.left { + clear: right; + margin-left: 0; + } + + .daterangepicker.rtl .calendar.left .calendar-table { + border-left: none; + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + + .daterangepicker.rtl .calendar.right { + margin-right: 0; + } + + .daterangepicker.rtl .calendar.right .calendar-table { + border-right: none; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + + .daterangepicker.rtl .left .daterangepicker_input { + padding-left: 12px; + } + + .daterangepicker.rtl .calendar.left .calendar-table { + padding-left: 12px; + } + + .daterangepicker.rtl .ranges, .daterangepicker.rtl .calendar { + text-align: right; + float: right; + } +} + @media (min-width: 730px) { - .daterangepicker .ranges { - width: auto; } - .daterangepicker.ltr .ranges { - float: left; } - .daterangepicker.rtl .ranges { - float: right; } - .daterangepicker .calendar.left { - clear: none !important; } } + .daterangepicker .ranges { + width: auto; + } + + .daterangepicker.ltr .ranges { + float: left; + } + + .daterangepicker.rtl .ranges { + float: right; + } + + .daterangepicker .calendar.left { + clear: none !important; + } +} diff --git a/public/js/ff/firefly.js b/public/js/ff/firefly.js index 6a1cef1308..837de9fa28 100644 --- a/public/js/ff/firefly.js +++ b/public/js/ff/firefly.js @@ -16,8 +16,8 @@ $(function () { configAccounting(currencySymbol); // on submit of form, disable any button in form: - $('form.form-horizontal').on('submit',function() { - $('button[type="submit"]').prop('disabled',true); + $('form.form-horizontal').on('submit', function () { + $('button[type="submit"]').prop('disabled', true); }); $.ajaxSetup({ diff --git a/public/js/ff/import/status.js b/public/js/ff/import/status.js index 665fcbca69..8dd2a24c6e 100644 --- a/public/js/ff/import/status.js +++ b/public/js/ff/import/status.js @@ -60,8 +60,6 @@ function failedJobImport(jqxhr, textStatus, error) { function reportOnJobImport(data) { switch (data.status) { - default: - break; case "configured": // job is ready. Do not check again, just show the start-box. Hide the rest. $('.statusbox').hide(); @@ -94,9 +92,10 @@ function reportOnJobImport(data) { $('.status_finished').show(); // show text: $('#import-status-more-info').html(data.finishedText); - - break; + default: + break; + } } diff --git a/public/js/ff/intro/intro.js b/public/js/ff/intro/intro.js index 70a5354c28..f858419064 100644 --- a/public/js/ff/intro/intro.js +++ b/public/js/ff/intro/intro.js @@ -10,7 +10,7 @@ $(function () { "use strict"; - if(!forceDemoOff) { + if (!forceDemoOff) { $.getJSON(routeStepsUri).done(setupIntro) } }); diff --git a/public/js/ff/piggy-banks/index.js b/public/js/ff/piggy-banks/index.js index f83320f24f..46e5c1b184 100644 --- a/public/js/ff/piggy-banks/index.js +++ b/public/js/ff/piggy-banks/index.js @@ -69,6 +69,7 @@ function removeMoney(e) { return false; } + function stopSorting() { "use strict"; $('.loadSpin').addClass('fa fa-refresh fa-spin'); diff --git a/public/js/ff/rules/index.js b/public/js/ff/rules/index.js index 52dd0ef27e..e7cfeae014 100644 --- a/public/js/ff/rules/index.js +++ b/public/js/ff/rules/index.js @@ -39,7 +39,7 @@ $(function () { ); // test rule triggers button: - $('.test_rule_triggers').click(testRuleTriggers); + $('.test_rule_triggers').click(testRuleTriggers); } ); diff --git a/public/js/ff/tags/show.js b/public/js/ff/tags/show.js index bcf22dee9c..6e5dbf4753 100644 --- a/public/js/ff/tags/show.js +++ b/public/js/ff/tags/show.js @@ -40,4 +40,5 @@ function initialize() { marker.setMap(map); } } + google.maps.event.addDomListener(window, 'load', initialize); diff --git a/public/js/ff/transactions/list.js b/public/js/ff/transactions/list.js index d3fdd80214..346396cecb 100644 --- a/public/js/ff/transactions/list.js +++ b/public/js/ff/transactions/list.js @@ -99,6 +99,7 @@ function checkAll() { "use strict"; $('.select_all_single').prop('checked', true); } + function uncheckAll() { "use strict"; $('.select_all_single').prop('checked', false); diff --git a/public/js/lib/bootstrap-multiselect.js b/public/js/lib/bootstrap-multiselect.js index 9a50a18a0d..3734d95fa2 100755 --- a/public/js/lib/bootstrap-multiselect.js +++ b/public/js/lib/bootstrap-multiselect.js @@ -48,7 +48,7 @@ ko.bindingHandlers.multiselect = { after: ['options', 'value', 'selectedOptions', 'enable', 'disable'], - init: function(element, valueAccessor, allBindings, viewModel, bindingContext) { + init: function (element, valueAccessor, allBindings, viewModel, bindingContext) { var $element = $(element); var config = ko.toJS(valueAccessor()); @@ -58,17 +58,17 @@ var options = allBindings.get('options'); if (ko.isObservable(options)) { ko.computed({ - read: function() { - options(); - setTimeout(function() { - var ms = $element.data('multiselect'); - if (ms) - ms.updateOriginalOptions();//Not sure how beneficial this is. - $element.multiselect('rebuild'); - }, 1); - }, - disposeWhenNodeIsRemoved: element - }); + read: function () { + options(); + setTimeout(function () { + var ms = $element.data('multiselect'); + if (ms) + ms.updateOriginalOptions();//Not sure how beneficial this is. + $element.multiselect('rebuild'); + }, 1); + }, + disposeWhenNodeIsRemoved: element + }); } } @@ -79,14 +79,14 @@ var value = allBindings.get('value'); if (ko.isObservable(value)) { ko.computed({ - read: function() { - value(); - setTimeout(function() { - $element.multiselect('refresh'); - }, 1); - }, - disposeWhenNodeIsRemoved: element - }).extend({ rateLimit: 100, notifyWhenChangesStop: true }); + read: function () { + value(); + setTimeout(function () { + $element.multiselect('refresh'); + }, 1); + }, + disposeWhenNodeIsRemoved: element + }).extend({rateLimit: 100, notifyWhenChangesStop: true}); } } @@ -96,14 +96,14 @@ var selectedOptions = allBindings.get('selectedOptions'); if (ko.isObservable(selectedOptions)) { ko.computed({ - read: function() { - selectedOptions(); - setTimeout(function() { - $element.multiselect('refresh'); - }, 1); - }, - disposeWhenNodeIsRemoved: element - }).extend({ rateLimit: 100, notifyWhenChangesStop: true }); + read: function () { + selectedOptions(); + setTimeout(function () { + $element.multiselect('refresh'); + }, 1); + }, + disposeWhenNodeIsRemoved: element + }).extend({rateLimit: 100, notifyWhenChangesStop: true}); } } @@ -120,11 +120,11 @@ var enable = allBindings.get('enable'); if (ko.isObservable(enable)) { ko.computed({ - read: function () { - setEnabled(enable()); - }, - disposeWhenNodeIsRemoved: element - }).extend({ rateLimit: 100, notifyWhenChangesStop: true }); + read: function () { + setEnabled(enable()); + }, + disposeWhenNodeIsRemoved: element + }).extend({rateLimit: 100, notifyWhenChangesStop: true}); } else { setEnabled(enable); } @@ -134,22 +134,22 @@ var disable = allBindings.get('disable'); if (ko.isObservable(disable)) { ko.computed({ - read: function () { - setEnabled(!disable()); - }, - disposeWhenNodeIsRemoved: element - }).extend({ rateLimit: 100, notifyWhenChangesStop: true }); + read: function () { + setEnabled(!disable()); + }, + disposeWhenNodeIsRemoved: element + }).extend({rateLimit: 100, notifyWhenChangesStop: true}); } else { setEnabled(!disable); } } - ko.utils.domNodeDisposal.addDisposeCallback(element, function() { + ko.utils.domNodeDisposal.addDisposeCallback(element, function () { $element.multiselect('destroy'); }); }, - update: function(element, valueAccessor, allBindings, viewModel, bindingContext) { + update: function (element, valueAccessor, allBindings, viewModel, bindingContext) { var $element = $(element); var config = ko.toJS(valueAccessor()); @@ -236,9 +236,9 @@ * @param {jQuery} select * @returns {String} */ - buttonText: function(options, select) { + buttonText: function (options, select) { if (this.disabledText.length > 0 - && (select.prop('disabled') || (options.length == 0 && this.disableIfEmpty))) { + && (select.prop('disabled') || (options.length == 0 && this.disableIfEmpty))) { return this.disabledText; } @@ -246,9 +246,9 @@ return this.nonSelectedText; } else if (this.allSelectedText - && options.length === $('option', $(select)).length - && $('option', $(select)).length !== 1 - && this.multiple) { + && options.length === $('option', $(select)).length + && $('option', $(select)).length !== 1 + && this.multiple) { if (this.selectAllNumber) { return this.allSelectedText + ' (' + options.length + ')'; @@ -264,7 +264,7 @@ var selected = ''; var delimiter = this.delimiterText; - options.each(function() { + options.each(function () { var label = ($(this).attr('label') !== undefined) ? $(this).attr('label') : $(this).text(); selected += label + delimiter; }); @@ -279,7 +279,7 @@ * @param {jQuery} select * @returns {@exp;selected@call;substr} */ - buttonTitle: function(options, select) { + buttonTitle: function (options, select) { if (options.length === 0) { return this.nonSelectedText; } @@ -294,7 +294,7 @@ return selected.substr(0, selected.length - this.delimiterText.length); } }, - checkboxName: function(option) { + checkboxName: function (option) { return false; // no checkbox name }, /** @@ -303,7 +303,7 @@ * @param {jQuery} element * @returns {String} */ - optionLabel: function(element){ + optionLabel: function (element) { return $(element).attr('label') || $(element).text(); }, /** @@ -312,7 +312,7 @@ * @param {jQuery} element * @returns {String} */ - optionClass: function(element) { + optionClass: function (element) { return $(element).attr('class') || ''; }, /** @@ -323,7 +323,7 @@ * @param {jQuery} option * @param {Boolean} checked */ - onChange : function(option, checked) { + onChange: function (option, checked) { }, /** @@ -331,7 +331,7 @@ * * @param {jQuery} event */ - onDropdownShow: function(event) { + onDropdownShow: function (event) { }, /** @@ -339,7 +339,7 @@ * * @param {jQuery} event */ - onDropdownHide: function(event) { + onDropdownHide: function (event) { }, /** @@ -347,7 +347,7 @@ * * @param {jQuery} event */ - onDropdownShown: function(event) { + onDropdownShown: function (event) { }, /** @@ -355,19 +355,19 @@ * * @param {jQuery} event */ - onDropdownHidden: function(event) { + onDropdownHidden: function (event) { }, /** * Triggered on select all. */ - onSelectAll: function() { + onSelectAll: function () { }, /** * Triggered on deselect all. */ - onDeselectAll: function() { + onDeselectAll: function () { }, /** @@ -376,7 +376,7 @@ * @param {jQuery} $select * @param {jQuery} $container */ - onInitialized: function($select, $container) { + onInitialized: function ($select, $container) { }, /** @@ -384,7 +384,7 @@ * * @param {jQuery} $filter */ - onFiltering: function($filter) { + onFiltering: function ($filter) { }, enableHTML: false, @@ -438,7 +438,7 @@ /** * Builds the container of the multiselect. */ - buildContainer: function() { + buildContainer: function () { this.$container = $(this.options.buttonContainer); this.$container.on('show.bs.dropdown', this.options.onDropdownShow); this.$container.on('hide.bs.dropdown', this.options.onDropdownHide); @@ -449,7 +449,7 @@ /** * Builds the button of the multiselect. */ - buildButton: function() { + buildButton: function () { this.$button = $(this.options.templates.button).addClass(this.options.buttonClass); if (this.$select.attr('class') && this.options.inheritClass) { this.$button.addClass(this.$select.attr('class')); @@ -465,13 +465,13 @@ // Manually add button width if set. if (this.options.buttonWidth && this.options.buttonWidth !== 'auto') { this.$button.css({ - 'width' : '100%', //this.options.buttonWidth, - 'overflow' : 'hidden', - 'text-overflow' : 'ellipsis' - }); + 'width': '100%', //this.options.buttonWidth, + 'overflow': 'hidden', + 'text-overflow': 'ellipsis' + }); this.$container.css({ - 'width': this.options.buttonWidth - }); + 'width': this.options.buttonWidth + }); } // Keep the tab index from the select. @@ -486,7 +486,7 @@ /** * Builds the ul representing the dropdown menu. */ - buildDropdown: function() { + buildDropdown: function () { // Build ul. this.$ul = $(this.options.templates.ul); @@ -499,23 +499,23 @@ if (this.options.maxHeight) { // TODO: Add a class for this option to move the css declarations. this.$ul.css({ - 'max-height': this.options.maxHeight + 'px', - 'overflow-y': 'auto', - 'overflow-x': 'hidden' - }); + 'max-height': this.options.maxHeight + 'px', + 'overflow-y': 'auto', + 'overflow-x': 'hidden' + }); } if (this.options.dropUp) { - var height = Math.min(this.options.maxHeight, $('option[data-role!="divider"]', this.$select).length*26 + $('option[data-role="divider"]', this.$select).length*19 + (this.options.includeSelectAllOption ? 26 : 0) + (this.options.enableFiltering || this.options.enableCaseInsensitiveFiltering ? 44 : 0)); + var height = Math.min(this.options.maxHeight, $('option[data-role!="divider"]', this.$select).length * 26 + $('option[data-role="divider"]', this.$select).length * 19 + (this.options.includeSelectAllOption ? 26 : 0) + (this.options.enableFiltering || this.options.enableCaseInsensitiveFiltering ? 44 : 0)); var moveCalc = height + 34; this.$ul.css({ - 'max-height': height + 'px', - 'overflow-y': 'auto', - 'overflow-x': 'hidden', - 'margin-top': "-" + moveCalc + 'px' - }); + 'max-height': height + 'px', + 'overflow-y': 'auto', + 'overflow-x': 'hidden', + 'margin-top': "-" + moveCalc + 'px' + }); } this.$container.append(this.$ul); @@ -526,9 +526,9 @@ * * Uses createDivider and createOptionValue to create the necessary options. */ - buildDropdownOptions: function() { + buildDropdownOptions: function () { - this.$select.children().each($.proxy(function(index, element) { + this.$select.children().each($.proxy(function (index, element) { var $element = $(element); // Support optgroups and options without a group simultaneously. @@ -557,7 +557,7 @@ }, this)); // Bind the change event on the dropdown elements. - $('li:not(.multiselect-group) input', this.$ul).on('change', $.proxy(function(event) { + $('li:not(.multiselect-group) input', this.$ul).on('change', $.proxy(function (event) { var $target = $(event.target); var checked = $target.prop('checked') || false; @@ -635,25 +635,25 @@ this.$select.change(); this.updateButtonText(); - if(this.options.preventInputChangeEvent) { + if (this.options.preventInputChangeEvent) { return false; } }, this)); - $('li a', this.$ul).on('mousedown', function(e) { + $('li a', this.$ul).on('mousedown', function (e) { if (e.shiftKey) { // Prevent selecting text by Shift+click return false; } }); - $('li a', this.$ul).on('touchstart click', $.proxy(function(event) { + $('li a', this.$ul).on('touchstart click', $.proxy(function (event) { event.stopPropagation(); var $target = $(event.target); if (event.shiftKey && this.options.multiple) { - if($target.is("label")){ // Handles checkbox selection manually (see https://github.com/davidstutz/bootstrap-multiselect/issues/431) + if ($target.is("label")) { // Handles checkbox selection manually (see https://github.com/davidstutz/bootstrap-multiselect/issues/431) event.preventDefault(); $target = $target.find("input"); $target.prop("checked", !$target.prop("checked")); @@ -697,7 +697,7 @@ } // Remembers last clicked option - if($target.is("input") && !$target.closest("li").is(".multiselect-item")){ + if ($target.is("input") && !$target.closest("li").is(".multiselect-item")) { this.lastToggledInput = $target; } @@ -705,7 +705,7 @@ }, this)); // Keyboard support. - this.$container.off('keydown.multiselect').on('keydown.multiselect', $.proxy(function(event) { + this.$container.off('keydown.multiselect').on('keydown.multiselect', $.proxy(function (event) { if ($('input[type="text"]', this.$container).is(':focus')) { return; } @@ -750,7 +750,7 @@ }, this)); if (this.options.enableClickableOptGroups && this.options.multiple) { - $("li.multiselect-group input", this.$ul).on("change", $.proxy(function(event) { + $("li.multiselect-group input", this.$ul).on("change", $.proxy(function (event) { event.stopPropagation(); var $target = $(event.target); @@ -775,7 +775,7 @@ } } - $.each($inputs, $.proxy(function(index, input) { + $.each($inputs, $.proxy(function (index, input) { var value = $(input).val(); var $option = this.getOptionByValue(value); @@ -807,13 +807,13 @@ } if (this.options.enableCollapsibleOptGroups && this.options.multiple) { - $("li.multiselect-group .caret-container", this.$ul).on("click", $.proxy(function(event) { + $("li.multiselect-group .caret-container", this.$ul).on("click", $.proxy(function (event) { var $li = $(event.target).closest('li'); var $inputs = $li.nextUntil("li.multiselect-group") - .not('.multiselect-filter-hidden'); + .not('.multiselect-filter-hidden'); var visible = true; - $inputs.each(function() { + $inputs.each(function () { visible = visible && $(this).is(':visible'); }); @@ -838,7 +838,7 @@ * * @param {jQuery} element */ - createOptionValue: function(element) { + createOptionValue: function (element) { var $element = $(element); if ($element.is(':selected')) { $element.prop('selected', true); @@ -906,7 +906,7 @@ * * @param {jQuery} element */ - createDivider: function(element) { + createDivider: function (element) { var $divider = $(this.options.templates.divider); this.$ul.append($divider); }, @@ -916,7 +916,7 @@ * * @param {jQuery} group */ - createOptgroup: function(group) { + createOptgroup: function (group) { var label = $(group).attr("label"); var value = $(group).attr("value"); var $li = $('
  • '); @@ -945,7 +945,7 @@ this.$ul.append($li); - $("option", group).each($.proxy(function($, group) { + $("option", group).each($.proxy(function ($, group) { this.createOptionValue(group); }, this)) }, @@ -955,7 +955,7 @@ * * Checks if a select all has already been created. */ - buildSelectAll: function() { + buildSelectAll: function () { if (typeof this.options.selectAllValue === 'number') { this.options.selectAllValue = this.options.selectAllValue.toString(); } @@ -963,7 +963,7 @@ var alreadyHasSelectAll = this.hasSelectAll(); if (!alreadyHasSelectAll && this.options.includeSelectAllOption && this.options.multiple - && $('option', this.$select).length > this.options.includeSelectAllIfMoreThan) { + && $('option', this.$select).length > this.options.includeSelectAllIfMoreThan) { // Check whether to add a divider after the select all. if (this.options.includeSelectAllDivider) { @@ -1003,7 +1003,7 @@ /** * Builds the filter. */ - buildFilter: function() { + buildFilter: function () { // Build filter if filtering OR case insensitive filtering is enabled and the number of options exceeds (or equals) enableFilterLength. if (this.options.enableFiltering || this.options.enableCaseInsensitiveFiltering) { @@ -1015,9 +1015,9 @@ $('input', this.$filter).attr('placeholder', this.options.filterPlaceholder); // Adds optional filter clear button - if(this.options.includeFilterClearBtn) { + if (this.options.includeFilterClearBtn) { var clearBtn = $(this.options.templates.filterClearBtn); - clearBtn.on('click', $.proxy(function(event){ + clearBtn.on('click', $.proxy(function (event) { clearTimeout(this.searchTimeout); this.$filter.find('.multiselect-search').val(''); @@ -1035,24 +1035,24 @@ this.$ul.prepend(this.$filter); - this.$filter.val(this.query).on('click', function(event) { + this.$filter.val(this.query).on('click', function (event) { event.stopPropagation(); - }).on('input keydown', $.proxy(function(event) { + }).on('input keydown', $.proxy(function (event) { // Cancel enter key default behaviour if (event.which === 13) { - event.preventDefault(); - } + event.preventDefault(); + } // This is useful to catch "keydown" events after the browser has updated the control. clearTimeout(this.searchTimeout); - this.searchTimeout = this.asyncFunction($.proxy(function() { + this.searchTimeout = this.asyncFunction($.proxy(function () { if (this.query !== event.target.value) { this.query = event.target.value; var currentGroup, currentGroupVisible; - $.each($('li', this.$ul), $.proxy(function(index, element) { + $.each($('li', this.$ul), $.proxy(function (index, element) { var value = $('input', element).length > 0 ? $('input', element).val() : ""; var text = $('label', element).text(); @@ -1132,7 +1132,7 @@ /** * Unbinds the whole plugin. */ - destroy: function() { + destroy: function () { this.$container.remove(); this.$select.show(); @@ -1205,8 +1205,8 @@ * @param {Array} selectValues * @param {Boolean} triggerOnChange */ - select: function(selectValues, triggerOnChange) { - if(!$.isArray(selectValues)) { + select: function (selectValues, triggerOnChange) { + if (!$.isArray(selectValues)) { selectValues = [selectValues]; } @@ -1220,7 +1220,7 @@ var $option = this.getOptionByValue(value); var $checkbox = this.getInputByValue(value); - if($option === undefined || $checkbox === undefined) { + if ($option === undefined || $checkbox === undefined) { continue; } @@ -1271,8 +1271,8 @@ * @param {Array} deselectValues * @param {Boolean} triggerOnChange */ - deselect: function(deselectValues, triggerOnChange) { - if(!$.isArray(deselectValues)) { + deselect: function (deselectValues, triggerOnChange) { + if (!$.isArray(deselectValues)) { deselectValues = [deselectValues]; } @@ -1286,7 +1286,7 @@ var $option = this.getOptionByValue(value); var $checkbox = this.getInputByValue(value); - if($option === undefined || $checkbox === undefined) { + if ($option === undefined || $checkbox === undefined) { continue; } @@ -1325,21 +1325,21 @@ var allLis = $("li:not(.divider):not(.disabled):not(.multiselect-group)", this.$ul); var visibleLis = $("li:not(.divider):not(.disabled):not(.multiselect-group):not(.multiselect-filter-hidden):not(.multiselect-collapisble-hidden)", this.$ul).filter(':visible'); - if(justVisible) { - $('input:enabled' , visibleLis).prop('checked', true); + if (justVisible) { + $('input:enabled', visibleLis).prop('checked', true); visibleLis.addClass(this.options.selectedClass); - $('input:enabled' , visibleLis).each($.proxy(function(index, element) { + $('input:enabled', visibleLis).each($.proxy(function (index, element) { var value = $(element).val(); var option = this.getOptionByValue(value); $(option).prop('selected', true); }, this)); } else { - $('input:enabled' , allLis).prop('checked', true); + $('input:enabled', allLis).prop('checked', true); allLis.addClass(this.options.selectedClass); - $('input:enabled' , allLis).each($.proxy(function(index, element) { + $('input:enabled', allLis).each($.proxy(function (index, element) { var value = $(element).val(); var option = this.getOptionByValue(value); $(option).prop('selected', true); @@ -1370,21 +1370,21 @@ var allLis = $("li:not(.divider):not(.disabled):not(.multiselect-group)", this.$ul); var visibleLis = $("li:not(.divider):not(.disabled):not(.multiselect-group):not(.multiselect-filter-hidden):not(.multiselect-collapisble-hidden)", this.$ul).filter(':visible'); - if(justVisible) { - $('input[type="checkbox"]:enabled' , visibleLis).prop('checked', false); + if (justVisible) { + $('input[type="checkbox"]:enabled', visibleLis).prop('checked', false); visibleLis.removeClass(this.options.selectedClass); - $('input[type="checkbox"]:enabled' , visibleLis).each($.proxy(function(index, element) { + $('input[type="checkbox"]:enabled', visibleLis).each($.proxy(function (index, element) { var value = $(element).val(); var option = this.getOptionByValue(value); $(option).prop('selected', false); }, this)); } else { - $('input[type="checkbox"]:enabled' , allLis).prop('checked', false); + $('input[type="checkbox"]:enabled', allLis).prop('checked', false); allLis.removeClass(this.options.selectedClass); - $('input[type="checkbox"]:enabled' , allLis).each($.proxy(function(index, element) { + $('input[type="checkbox"]:enabled', allLis).each($.proxy(function (index, element) { var value = $(element).val(); var option = this.getOptionByValue(value); $(option).prop('selected', false); @@ -1407,7 +1407,7 @@ * * Rebuilds the dropdown, the filter and the select all option. */ - rebuild: function() { + rebuild: function () { this.$ul.html(''); // Important to distinguish between radios and checkboxes. @@ -1439,7 +1439,7 @@ /** * The provided data will be used to build the dropdown. */ - dataprovider: function(dataprovider) { + dataprovider: function (dataprovider) { var groupCounter = 0; var $select = this.$select.empty(); @@ -1451,11 +1451,11 @@ groupCounter++; $tag = $('').attr({ - label: option.label || 'Group ' + groupCounter, - disabled: !!option.disabled - }); + label: option.label || 'Group ' + groupCounter, + disabled: !!option.disabled + }); - forEach(option.children, function(subOption) { // add children option tags + forEach(option.children, function (subOption) { // add children option tags var attributes = { value: subOption.value, label: subOption.label || subOption.value, @@ -1465,10 +1465,10 @@ }; //Loop through attributes object and add key-value for each attribute - for (var key in subOption.attributes) { + for (var key in subOption.attributes) { attributes['data-' + key] = subOption.attributes[key]; - } - //Append original attributes + new data attributes to option + } + //Append original attributes + new data attributes to option $tag.append($('"; + (m === currentMonth ? " selected='selected'" : "") + + ">" + this.locale.monthNames[m] + ""; } else { monthHtml += ""; + (m === currentMonth ? " selected='selected'" : "") + + " disabled='disabled'>" + this.locale.monthNames[m] + ""; } } monthHtml += ""; @@ -740,8 +741,8 @@ var yearHtml = ''; @@ -762,7 +763,7 @@ if (this.showWeekNumbers || this.showISOWeekNumbers) html += '' + this.locale.weekLabel + ''; - $.each(this.locale.daysOfWeek, function(index, dayOfWeek) { + $.each(this.locale.daysOfWeek, function (index, dayOfWeek) { html += '' + dayOfWeek + ''; }); @@ -859,7 +860,7 @@ }, - renderTimePicker: function(side) { + renderTimePicker: function (side) { // Don't bother updating the time picker if it's currently disabled // because an end date hasn't been clicked yet @@ -1020,7 +1021,7 @@ }, - updateFormInputs: function() { + updateFormInputs: function () { //ignore mouse movements while an above-calendar text input has focus if (this.container.find('input[name=daterangepicker_start]').is(":focus") || this.container.find('input[name=daterangepicker_end]').is(":focus")) @@ -1038,8 +1039,8 @@ }, - move: function() { - var parentOffset = { top: 0, left: 0 }, + move: function () { + var parentOffset = {top: 0, left: 0}, containerTop; var parentRightEdge = $(window).width(); if (!this.parentEl.is('body')) { @@ -1058,62 +1059,66 @@ if (this.opens == 'left') { this.container.css({ - top: containerTop, - right: parentRightEdge - this.element.offset().left - this.element.outerWidth(), - left: 'auto' - }); + top: containerTop, + right: parentRightEdge - this.element.offset().left - this.element.outerWidth(), + left: 'auto' + }); if (this.container.offset().left < 0) { this.container.css({ - right: 'auto', - left: 9 - }); + right: 'auto', + left: 9 + }); } } else if (this.opens == 'center') { this.container.css({ - top: containerTop, - left: this.element.offset().left - parentOffset.left + this.element.outerWidth() / 2 - - this.container.outerWidth() / 2, - right: 'auto' - }); + top: containerTop, + left: this.element.offset().left - parentOffset.left + this.element.outerWidth() / 2 + - this.container.outerWidth() / 2, + right: 'auto' + }); if (this.container.offset().left < 0) { this.container.css({ - right: 'auto', - left: 9 - }); + right: 'auto', + left: 9 + }); } } else { this.container.css({ - top: containerTop, - left: this.element.offset().left - parentOffset.left, - right: 'auto' - }); + top: containerTop, + left: this.element.offset().left - parentOffset.left, + right: 'auto' + }); if (this.container.offset().left + this.container.outerWidth() > $(window).width()) { this.container.css({ - left: 'auto', - right: 0 - }); + left: 'auto', + right: 0 + }); } } }, - show: function(e) { + show: function (e) { if (this.isShowing) return; // Create a click proxy that is private to this instance of datepicker, for unbinding - this._outsideClickProxy = $.proxy(function(e) { this.outsideClick(e); }, this); + this._outsideClickProxy = $.proxy(function (e) { + this.outsideClick(e); + }, this); // Bind global datepicker mousedown for hiding and $(document) - .on('mousedown.daterangepicker', this._outsideClickProxy) - // also support mobile devices - .on('touchend.daterangepicker', this._outsideClickProxy) - // also explicitly play nice with Bootstrap dropdowns, which stopPropagation when clicking them - .on('click.daterangepicker', '[data-toggle=dropdown]', this._outsideClickProxy) - // and also close when focus changes to outside the picker (eg. tabbing between controls) - .on('focusin.daterangepicker', this._outsideClickProxy); + .on('mousedown.daterangepicker', this._outsideClickProxy) + // also support mobile devices + .on('touchend.daterangepicker', this._outsideClickProxy) + // also explicitly play nice with Bootstrap dropdowns, which stopPropagation when clicking them + .on('click.daterangepicker', '[data-toggle=dropdown]', this._outsideClickProxy) + // and also close when focus changes to outside the picker (eg. tabbing between controls) + .on('focusin.daterangepicker', this._outsideClickProxy); // Reposition the picker if the window is resized while it's open - $(window).on('resize.daterangepicker', $.proxy(function(e) { this.move(e); }, this)); + $(window).on('resize.daterangepicker', $.proxy(function (e) { + this.move(e); + }, this)); this.oldStartDate = this.startDate.clone(); this.oldEndDate = this.endDate.clone(); @@ -1126,7 +1131,7 @@ this.isShowing = true; }, - hide: function(e) { + hide: function (e) { if (!this.isShowing) return; //incomplete date selection, revert to last values @@ -1149,7 +1154,7 @@ this.isShowing = false; }, - toggle: function(e) { + toggle: function (e) { if (this.isShowing) { this.hide(); } else { @@ -1157,33 +1162,33 @@ } }, - outsideClick: function(e) { + outsideClick: function (e) { var target = $(e.target); // if the page is clicked anywhere except within the daterangerpicker/button // itself then call this.hide() if ( // ie modal dialog fix - e.type == "focusin" || - target.closest(this.element).length || - target.closest(this.container).length || - target.closest('.calendar-table').length - ) return; + e.type == "focusin" || + target.closest(this.element).length || + target.closest(this.container).length || + target.closest('.calendar-table').length + ) return; this.hide(); this.element.trigger('outsideClick.daterangepicker', this); }, - showCalendars: function() { + showCalendars: function () { this.container.addClass('show-calendar'); this.move(); this.element.trigger('showCalendar.daterangepicker', this); }, - hideCalendars: function() { + hideCalendars: function () { this.container.removeClass('show-calendar'); this.element.trigger('hideCalendar.daterangepicker', this); }, - hoverRange: function(e) { + hoverRange: function (e) { //ignore mouse movements while an above-calendar text input has focus if (this.container.find('input[name=daterangepicker_start]').is(":focus") || this.container.find('input[name=daterangepicker_end]').is(":focus")) @@ -1201,7 +1206,7 @@ }, - clickRange: function(e) { + clickRange: function (e) { var label = e.target.getAttribute('data-range-key'); this.chosenLabel = label; if (label == this.locale.customRangeLabel) { @@ -1222,7 +1227,7 @@ } }, - clickPrev: function(e) { + clickPrev: function (e) { var cal = $(e.target).parents('.calendar'); if (cal.hasClass('left')) { this.leftCalendar.month.subtract(1, 'month'); @@ -1234,7 +1239,7 @@ this.updateCalendars(); }, - clickNext: function(e) { + clickNext: function (e) { var cal = $(e.target).parents('.calendar'); if (cal.hasClass('left')) { this.leftCalendar.month.add(1, 'month'); @@ -1246,7 +1251,7 @@ this.updateCalendars(); }, - hoverDate: function(e) { + hoverDate: function (e) { //ignore mouse movements while an above-calendar text input has focus //if (this.container.find('input[name=daterangepicker_start]').is(":focus") || this.container.find('input[name=daterangepicker_end]').is(":focus")) @@ -1273,7 +1278,7 @@ var rightCalendar = this.rightCalendar; var startDate = this.startDate; if (!this.endDate) { - this.container.find('.calendar tbody td').each(function(index, el) { + this.container.find('.calendar tbody td').each(function (index, el) { //skip week numbers, only look at dates if ($(el).hasClass('week')) return; @@ -1295,7 +1300,7 @@ }, - clickDate: function(e) { + clickDate: function (e) { if (!$(e.target).hasClass('available')) return; @@ -1350,8 +1355,8 @@ } this.setEndDate(date.clone()); if (this.autoApply) { - this.calculateChosenLabel(); - this.clickApply(); + this.calculateChosenLabel(); + this.clickApply(); } } @@ -1398,22 +1403,22 @@ } }, - clickApply: function(e) { + clickApply: function (e) { this.hide(); this.element.trigger('apply.daterangepicker', this); }, - clickCancel: function(e) { + clickCancel: function (e) { this.startDate = this.oldStartDate; this.endDate = this.oldEndDate; this.hide(); this.element.trigger('cancel.daterangepicker', this); }, - monthOrYearChanged: function(e) { - var isLeft = $(e.target).closest('.calendar').hasClass('left'), + monthOrYearChanged: function (e) { + var isLeft = $(e.target).closest('.calendar').hasClass('left'), leftOrRight = isLeft ? 'left' : 'right', - cal = this.container.find('.calendar.'+leftOrRight); + cal = this.container.find('.calendar.' + leftOrRight); // Month must be Number for new moment versions var month = parseInt(cal.find('.monthselect').val(), 10); @@ -1452,9 +1457,9 @@ this.updateCalendars(); }, - timeChanged: function(e) { + timeChanged: function (e) { - var cal = $(e.target).closest('.calendar'), + var cal = $(e.target).closest('.calendar'), isLeft = cal.hasClass('left'); var hour = parseInt(cal.find('.hourselect').val(), 10); @@ -1500,7 +1505,7 @@ }, - formInputsChanged: function(e) { + formInputsChanged: function (e) { var isRight = $(e.target).closest('.calendar').hasClass('right'); var start = moment(this.container.find('input[name="daterangepicker_start"]').val(), this.locale.format); var end = moment(this.container.find('input[name="daterangepicker_end"]').val(), this.locale.format); @@ -1524,7 +1529,7 @@ this.updateView(); }, - formInputsFocused: function(e) { + formInputsFocused: function (e) { // Highlight the focused input this.container.find('input[name="daterangepicker_start"], input[name="daterangepicker_end"]').removeClass('active'); @@ -1544,7 +1549,7 @@ }, - formInputsBlurred: function(e) { + formInputsBlurred: function (e) { // this function has one purpose right now: if you tab from the first // text input to the second in the UI, the endDate is nulled so that @@ -1562,14 +1567,14 @@ }, - elementChanged: function() { + elementChanged: function () { if (!this.element.is('input')) return; if (!this.element.val().length) return; if (this.element.val().length < this.locale.format.length) return; var dateString = this.element.val().split(this.locale.separator), - start = null, - end = null; + start = null, + end = null; if (dateString.length === 2) { start = moment(dateString[0], this.locale.format); @@ -1588,14 +1593,14 @@ this.updateView(); }, - keydown: function(e) { + keydown: function (e) { //hide on tab or enter if ((e.keyCode === 9) || (e.keyCode === 13)) { this.hide(); } }, - updateElement: function() { + updateElement: function () { if (this.element.is('input') && !this.singleDatePicker && this.autoUpdateInput) { this.element.val(this.startDate.format(this.locale.format) + this.locale.separator + this.endDate.format(this.locale.format)); this.element.trigger('change'); @@ -1605,7 +1610,7 @@ } }, - remove: function() { + remove: function () { this.container.remove(); this.element.off('.daterangepicker'); this.element.removeData(); @@ -1613,8 +1618,8 @@ }; - $.fn.daterangepicker = function(options, callback) { - this.each(function() { + $.fn.daterangepicker = function (options, callback) { + this.each(function () { var el = $(this); if (el.data('daterangepicker')) el.data('daterangepicker').remove(); diff --git a/public/lib/adminlte/css/AdminLTE.css b/public/lib/adminlte/css/AdminLTE.css index 97ef7bec14..4a85f2afb2 100755 --- a/public/lib/adminlte/css/AdminLTE.css +++ b/public/lib/adminlte/css/AdminLTE.css @@ -1,4 +1,5 @@ @import url(https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic); + /*! * AdminLTE v2.3.7 * Author: Almsaeed Studio @@ -12,44 +13,52 @@ */ html, body { - min-height: 100%; + min-height: 100%; } + .layout-boxed html, .layout-boxed body { - height: 100%; + height: 100%; } + body { - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - font-family: 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif; - font-weight: 400; - overflow-x: hidden; - overflow-y: auto; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + font-family: 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif; + font-weight: 400; + overflow-x: hidden; + overflow-y: auto; } + /* Layout */ .wrapper { - min-height: 100%; - position: relative; - overflow: hidden; + min-height: 100%; + position: relative; + overflow: hidden; } + .wrapper:before, .wrapper:after { - content: " "; - display: table; + content: " "; + display: table; } + .wrapper:after { - clear: both; + clear: both; } + .layout-boxed .wrapper { - max-width: 1250px; - margin: 0 auto; - min-height: 100%; - box-shadow: 0 0 8px rgba(0, 0, 0, 0.5); - position: relative; + max-width: 1250px; + margin: 0 auto; + min-height: 100%; + box-shadow: 0 0 8px rgba(0, 0, 0, 0.5); + position: relative; } + .layout-boxed { - background: url('../img/boxed-bg.jpg') repeat fixed; + background: url('../img/boxed-bg.jpg') repeat fixed; } + /* * Content Wrapper - contains the main content * ```.right-side has been deprecated as of v2.0.0 in favor of .content-wrapper ``` @@ -57,78 +66,90 @@ body { .content-wrapper, .right-side, .main-footer { - -webkit-transition: -webkit-transform 0.3s ease-in-out, margin 0.3s ease-in-out; - -moz-transition: -moz-transform 0.3s ease-in-out, margin 0.3s ease-in-out; - -o-transition: -o-transform 0.3s ease-in-out, margin 0.3s ease-in-out; - transition: transform 0.3s ease-in-out, margin 0.3s ease-in-out; - margin-left: 230px; - z-index: 820; + -webkit-transition: -webkit-transform 0.3s ease-in-out, margin 0.3s ease-in-out; + -moz-transition: -moz-transform 0.3s ease-in-out, margin 0.3s ease-in-out; + -o-transition: -o-transform 0.3s ease-in-out, margin 0.3s ease-in-out; + transition: transform 0.3s ease-in-out, margin 0.3s ease-in-out; + margin-left: 230px; + z-index: 820; } + .layout-top-nav .content-wrapper, .layout-top-nav .right-side, .layout-top-nav .main-footer { - margin-left: 0; -} -@media (max-width: 767px) { - .content-wrapper, - .right-side, - .main-footer { margin-left: 0; - } } + +@media (max-width: 767px) { + .content-wrapper, + .right-side, + .main-footer { + margin-left: 0; + } +} + @media (min-width: 768px) { - .sidebar-collapse .content-wrapper, - .sidebar-collapse .right-side, - .sidebar-collapse .main-footer { - margin-left: 0; - } + .sidebar-collapse .content-wrapper, + .sidebar-collapse .right-side, + .sidebar-collapse .main-footer { + margin-left: 0; + } } + @media (max-width: 767px) { - .sidebar-open .content-wrapper, - .sidebar-open .right-side, - .sidebar-open .main-footer { - -webkit-transform: translate(230px, 0); - -ms-transform: translate(230px, 0); - -o-transform: translate(230px, 0); - transform: translate(230px, 0); - } + .sidebar-open .content-wrapper, + .sidebar-open .right-side, + .sidebar-open .main-footer { + -webkit-transform: translate(230px, 0); + -ms-transform: translate(230px, 0); + -o-transform: translate(230px, 0); + transform: translate(230px, 0); + } } + .content-wrapper, .right-side { - min-height: 100%; - background-color: #ecf0f5; - z-index: 800; + min-height: 100%; + background-color: #ecf0f5; + z-index: 800; } + .main-footer { - background: #fff; - padding: 15px; - color: #444; - border-top: 1px solid #d2d6de; + background: #fff; + padding: 15px; + color: #444; + border-top: 1px solid #d2d6de; } + /* Fixed layout */ .fixed .main-header, .fixed .main-sidebar, .fixed .left-side { - position: fixed; + position: fixed; } + .fixed .main-header { - top: 0; - right: 0; - left: 0; + top: 0; + right: 0; + left: 0; } + .fixed .content-wrapper, .fixed .right-side { - padding-top: 50px; + padding-top: 50px; } + @media (max-width: 767px) { - .fixed .content-wrapper, - .fixed .right-side { - padding-top: 100px; - } + .fixed .content-wrapper, + .fixed .right-side { + padding-top: 100px; + } } + .fixed.layout-boxed .wrapper { - max-width: 100%; + max-width: 100%; } + body.hold-transition .content-wrapper, body.hold-transition .right-side, body.hold-transition .main-footer, @@ -136,20 +157,22 @@ body.hold-transition .main-sidebar, body.hold-transition .left-side, body.hold-transition .main-header .navbar, body.hold-transition .main-header .logo { - /* Fix for IE */ - -webkit-transition: none; - -o-transition: none; - transition: none; + /* Fix for IE */ + -webkit-transition: none; + -o-transition: none; + transition: none; } + /* Content */ .content { - min-height: 250px; - padding: 15px; - margin-right: auto; - margin-left: auto; - padding-left: 15px; - padding-right: 15px; + min-height: 250px; + padding: 15px; + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; } + /* H1 - H6 font */ h1, h2, @@ -163,2264 +186,2710 @@ h6, .h4, .h5, .h6 { - font-family: 'Source Sans Pro', sans-serif; + font-family: 'Source Sans Pro', sans-serif; } + /* General Links */ a { - color: #3c8dbc; + color: #3c8dbc; } + a:hover, a:active, a:focus { - outline: none; - text-decoration: none; - color: #72afd2; + outline: none; + text-decoration: none; + color: #72afd2; } + /* Page Header */ .page-header { - margin: 10px 0 20px 0; - font-size: 22px; + margin: 10px 0 20px 0; + font-size: 22px; } + .page-header > small { - color: #666; - display: block; - margin-top: 5px; + color: #666; + display: block; + margin-top: 5px; } + /* * Component: Main Header * ---------------------- */ .main-header { - position: relative; - max-height: 100px; - z-index: 1030; + position: relative; + max-height: 100px; + z-index: 1030; } + .main-header .navbar { - -webkit-transition: margin-left 0.3s ease-in-out; - -o-transition: margin-left 0.3s ease-in-out; - transition: margin-left 0.3s ease-in-out; - margin-bottom: 0; - margin-left: 230px; - border: none; - min-height: 50px; - border-radius: 0; + -webkit-transition: margin-left 0.3s ease-in-out; + -o-transition: margin-left 0.3s ease-in-out; + transition: margin-left 0.3s ease-in-out; + margin-bottom: 0; + margin-left: 230px; + border: none; + min-height: 50px; + border-radius: 0; } + .layout-top-nav .main-header .navbar { - margin-left: 0; + margin-left: 0; } + .main-header #navbar-search-input.form-control { - background: rgba(255, 255, 255, 0.2); - border-color: transparent; + background: rgba(255, 255, 255, 0.2); + border-color: transparent; } + .main-header #navbar-search-input.form-control:focus, .main-header #navbar-search-input.form-control:active { - border-color: rgba(0, 0, 0, 0.1); - background: rgba(255, 255, 255, 0.9); + border-color: rgba(0, 0, 0, 0.1); + background: rgba(255, 255, 255, 0.9); } + .main-header #navbar-search-input.form-control::-moz-placeholder { - color: #ccc; - opacity: 1; + color: #ccc; + opacity: 1; } + .main-header #navbar-search-input.form-control:-ms-input-placeholder { - color: #ccc; + color: #ccc; } + .main-header #navbar-search-input.form-control::-webkit-input-placeholder { - color: #ccc; + color: #ccc; } + .main-header .navbar-custom-menu, .main-header .navbar-right { - float: right; + float: right; } + @media (max-width: 991px) { - .main-header .navbar-custom-menu a, - .main-header .navbar-right a { - color: inherit; - background: transparent; - } + .main-header .navbar-custom-menu a, + .main-header .navbar-right a { + color: inherit; + background: transparent; + } } + @media (max-width: 767px) { - .main-header .navbar-right { - float: none; - } - .navbar-collapse .main-header .navbar-right { - margin: 7.5px -15px; - } - .main-header .navbar-right > li { - color: inherit; - border: 0; - } + .main-header .navbar-right { + float: none; + } + + .navbar-collapse .main-header .navbar-right { + margin: 7.5px -15px; + } + + .main-header .navbar-right > li { + color: inherit; + border: 0; + } } + .main-header .sidebar-toggle { - float: left; - background-color: transparent; - background-image: none; - padding: 15px 15px; - font-family: fontAwesome; + float: left; + background-color: transparent; + background-image: none; + padding: 15px 15px; + font-family: fontAwesome; } + .main-header .sidebar-toggle:before { - content: "\f0c9"; + content: "\f0c9"; } + .main-header .sidebar-toggle:hover { - color: #fff; + color: #fff; } + .main-header .sidebar-toggle:focus, .main-header .sidebar-toggle:active { - background: transparent; + background: transparent; } + .main-header .sidebar-toggle .icon-bar { - display: none; + display: none; } + .main-header .navbar .nav > li.user > a > .fa, .main-header .navbar .nav > li.user > a > .glyphicon, .main-header .navbar .nav > li.user > a > .ion { - margin-right: 5px; + margin-right: 5px; } + .main-header .navbar .nav > li > a > .label { - position: absolute; - top: 9px; - right: 7px; - text-align: center; - font-size: 9px; - padding: 2px 3px; - line-height: .9; + position: absolute; + top: 9px; + right: 7px; + text-align: center; + font-size: 9px; + padding: 2px 3px; + line-height: .9; } + .main-header .logo { - -webkit-transition: width 0.3s ease-in-out; - -o-transition: width 0.3s ease-in-out; - transition: width 0.3s ease-in-out; - display: block; - float: left; - height: 50px; - font-size: 20px; - line-height: 50px; - text-align: center; - width: 230px; - font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - padding: 0 15px; - font-weight: 300; - overflow: hidden; + -webkit-transition: width 0.3s ease-in-out; + -o-transition: width 0.3s ease-in-out; + transition: width 0.3s ease-in-out; + display: block; + float: left; + height: 50px; + font-size: 20px; + line-height: 50px; + text-align: center; + width: 230px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + padding: 0 15px; + font-weight: 300; + overflow: hidden; } + .main-header .logo .logo-lg { - display: block; + display: block; } + .main-header .logo .logo-mini { - display: none; + display: none; } + .main-header .navbar-brand { - color: #fff; + color: #fff; } + .content-header { - position: relative; - padding: 15px 15px 0 15px; + position: relative; + padding: 15px 15px 0 15px; } + .content-header > h1 { - margin: 0; - font-size: 24px; + margin: 0; + font-size: 24px; } + .content-header > h1 > small { - font-size: 15px; - display: inline-block; - padding-left: 4px; - font-weight: 300; + font-size: 15px; + display: inline-block; + padding-left: 4px; + font-weight: 300; } + .content-header > .breadcrumb { - float: right; - background: transparent; - margin-top: 0; - margin-bottom: 0; - font-size: 12px; - padding: 7px 5px; - position: absolute; - top: 15px; - right: 10px; - border-radius: 2px; + float: right; + background: transparent; + margin-top: 0; + margin-bottom: 0; + font-size: 12px; + padding: 7px 5px; + position: absolute; + top: 15px; + right: 10px; + border-radius: 2px; } + .content-header > .breadcrumb > li > a { - color: #444; - text-decoration: none; - display: inline-block; + color: #444; + text-decoration: none; + display: inline-block; } + .content-header > .breadcrumb > li > a > .fa, .content-header > .breadcrumb > li > a > .glyphicon, .content-header > .breadcrumb > li > a > .ion { - margin-right: 5px; + margin-right: 5px; } + .content-header > .breadcrumb > li + li:before { - content: '>\00a0'; + content: '>\00a0'; } + @media (max-width: 991px) { - .content-header > .breadcrumb { - position: relative; - margin-top: 5px; - top: 0; - right: 0; - float: none; - background: #d2d6de; - padding-left: 10px; - } - .content-header > .breadcrumb li:before { - color: #97a0b3; - } + .content-header > .breadcrumb { + position: relative; + margin-top: 5px; + top: 0; + right: 0; + float: none; + background: #d2d6de; + padding-left: 10px; + } + + .content-header > .breadcrumb li:before { + color: #97a0b3; + } } + .navbar-toggle { - color: #fff; - border: 0; - margin: 0; - padding: 15px 15px; -} -@media (max-width: 991px) { - .navbar-custom-menu .navbar-nav > li { - float: left; - } - .navbar-custom-menu .navbar-nav { + color: #fff; + border: 0; margin: 0; - float: left; - } - .navbar-custom-menu .navbar-nav > li > a { - padding-top: 15px; - padding-bottom: 15px; - line-height: 20px; - } + padding: 15px 15px; } + +@media (max-width: 991px) { + .navbar-custom-menu .navbar-nav > li { + float: left; + } + + .navbar-custom-menu .navbar-nav { + margin: 0; + float: left; + } + + .navbar-custom-menu .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + line-height: 20px; + } +} + @media (max-width: 767px) { - .main-header { - position: relative; - } - .main-header .logo, - .main-header .navbar { - width: 100%; - float: none; - } - .main-header .navbar { - margin: 0; - } - .main-header .navbar-custom-menu { - float: right; - } + .main-header { + position: relative; + } + + .main-header .logo, + .main-header .navbar { + width: 100%; + float: none; + } + + .main-header .navbar { + margin: 0; + } + + .main-header .navbar-custom-menu { + float: right; + } } + @media (max-width: 991px) { - .navbar-collapse.pull-left { - float: none !important; - } - .navbar-collapse.pull-left + .navbar-custom-menu { - display: block; - position: absolute; - top: 0; - right: 40px; - } + .navbar-collapse.pull-left { + float: none !important; + } + + .navbar-collapse.pull-left + .navbar-custom-menu { + display: block; + position: absolute; + top: 0; + right: 40px; + } } + /* * Component: Sidebar * ------------------ */ .main-sidebar, .left-side { - position: absolute; - top: 0; - left: 0; - padding-top: 50px; - min-height: 100%; - width: 230px; - z-index: 810; - -webkit-transition: -webkit-transform 0.3s ease-in-out, width 0.3s ease-in-out; - -moz-transition: -moz-transform 0.3s ease-in-out, width 0.3s ease-in-out; - -o-transition: -o-transform 0.3s ease-in-out, width 0.3s ease-in-out; - transition: transform 0.3s ease-in-out, width 0.3s ease-in-out; + position: absolute; + top: 0; + left: 0; + padding-top: 50px; + min-height: 100%; + width: 230px; + z-index: 810; + -webkit-transition: -webkit-transform 0.3s ease-in-out, width 0.3s ease-in-out; + -moz-transition: -moz-transform 0.3s ease-in-out, width 0.3s ease-in-out; + -o-transition: -o-transform 0.3s ease-in-out, width 0.3s ease-in-out; + transition: transform 0.3s ease-in-out, width 0.3s ease-in-out; } + @media (max-width: 767px) { - .main-sidebar, - .left-side { - padding-top: 100px; - } + .main-sidebar, + .left-side { + padding-top: 100px; + } } + @media (max-width: 767px) { - .main-sidebar, - .left-side { - -webkit-transform: translate(-230px, 0); - -ms-transform: translate(-230px, 0); - -o-transform: translate(-230px, 0); - transform: translate(-230px, 0); - } + .main-sidebar, + .left-side { + -webkit-transform: translate(-230px, 0); + -ms-transform: translate(-230px, 0); + -o-transform: translate(-230px, 0); + transform: translate(-230px, 0); + } } + @media (min-width: 768px) { - .sidebar-collapse .main-sidebar, - .sidebar-collapse .left-side { - -webkit-transform: translate(-230px, 0); - -ms-transform: translate(-230px, 0); - -o-transform: translate(-230px, 0); - transform: translate(-230px, 0); - } + .sidebar-collapse .main-sidebar, + .sidebar-collapse .left-side { + -webkit-transform: translate(-230px, 0); + -ms-transform: translate(-230px, 0); + -o-transform: translate(-230px, 0); + transform: translate(-230px, 0); + } } + @media (max-width: 767px) { - .sidebar-open .main-sidebar, - .sidebar-open .left-side { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); - } + .sidebar-open .main-sidebar, + .sidebar-open .left-side { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); + } } + .sidebar { - padding-bottom: 10px; + padding-bottom: 10px; } + .sidebar-form input:focus { - border-color: transparent; + border-color: transparent; } + .user-panel { - position: relative; - width: 100%; - padding: 10px; - overflow: hidden; + position: relative; + width: 100%; + padding: 10px; + overflow: hidden; } + .user-panel:before, .user-panel:after { - content: " "; - display: table; + content: " "; + display: table; } + .user-panel:after { - clear: both; + clear: both; } + .user-panel > .image > img { - width: 100%; - max-width: 45px; - height: auto; + width: 100%; + max-width: 45px; + height: auto; } + .user-panel > .info { - padding: 5px 5px 5px 15px; - line-height: 1; - position: absolute; - left: 55px; + padding: 5px 5px 5px 15px; + line-height: 1; + position: absolute; + left: 55px; } + .user-panel > .info > p { - font-weight: 600; - margin-bottom: 9px; + font-weight: 600; + margin-bottom: 9px; } + .user-panel > .info > a { - text-decoration: none; - padding-right: 5px; - margin-top: 3px; - font-size: 11px; + text-decoration: none; + padding-right: 5px; + margin-top: 3px; + font-size: 11px; } + .user-panel > .info > a > .fa, .user-panel > .info > a > .ion, .user-panel > .info > a > .glyphicon { - margin-right: 3px; + margin-right: 3px; } + .sidebar-menu { - list-style: none; - margin: 0; - padding: 0; + list-style: none; + margin: 0; + padding: 0; } + .sidebar-menu > li { - position: relative; - margin: 0; - padding: 0; + position: relative; + margin: 0; + padding: 0; } + .sidebar-menu > li > a { - padding: 12px 5px 12px 15px; - display: block; + padding: 12px 5px 12px 15px; + display: block; } + .sidebar-menu > li > a > .fa, .sidebar-menu > li > a > .glyphicon, .sidebar-menu > li > a > .ion { - width: 20px; + width: 20px; } + .sidebar-menu > li .label, .sidebar-menu > li .badge { - margin-right: 5px; + margin-right: 5px; } + .sidebar-menu > li .badge { - margin-top: 3px; + margin-top: 3px; } + .sidebar-menu li.header { - padding: 10px 25px 10px 15px; - font-size: 12px; + padding: 10px 25px 10px 15px; + font-size: 12px; } + .sidebar-menu li > a > .fa-angle-left, .sidebar-menu li > a > .pull-right-container > .fa-angle-left { - width: auto; - height: auto; - padding: 0; - margin-right: 10px; + width: auto; + height: auto; + padding: 0; + margin-right: 10px; } + .sidebar-menu li.active > a > .fa-angle-left, .sidebar-menu li.active > a > .pull-right-container > .fa-angle-left { - -webkit-transform: rotate(-90deg); - -ms-transform: rotate(-90deg); - -o-transform: rotate(-90deg); - transform: rotate(-90deg); + -webkit-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + -o-transform: rotate(-90deg); + transform: rotate(-90deg); } + .sidebar-menu li.active > .treeview-menu { - display: block; + display: block; } + .sidebar-menu .treeview-menu { - display: none; - list-style: none; - padding: 0; - margin: 0; - padding-left: 5px; + display: none; + list-style: none; + padding: 0; + margin: 0; + padding-left: 5px; } + .sidebar-menu .treeview-menu .treeview-menu { - padding-left: 20px; + padding-left: 20px; } + .sidebar-menu .treeview-menu > li { - margin: 0; + margin: 0; } + .sidebar-menu .treeview-menu > li > a { - padding: 5px 5px 5px 15px; - display: block; - font-size: 14px; + padding: 5px 5px 5px 15px; + display: block; + font-size: 14px; } + .sidebar-menu .treeview-menu > li > a > .fa, .sidebar-menu .treeview-menu > li > a > .glyphicon, .sidebar-menu .treeview-menu > li > a > .ion { - width: 20px; + width: 20px; } + .sidebar-menu .treeview-menu > li > a > .pull-right-container > .fa-angle-left, .sidebar-menu .treeview-menu > li > a > .pull-right-container > .fa-angle-down, .sidebar-menu .treeview-menu > li > a > .fa-angle-left, .sidebar-menu .treeview-menu > li > a > .fa-angle-down { - width: auto; + width: auto; } + /* * Component: Sidebar Mini */ @media (min-width: 768px) { - .sidebar-mini.sidebar-collapse .content-wrapper, - .sidebar-mini.sidebar-collapse .right-side, - .sidebar-mini.sidebar-collapse .main-footer { - margin-left: 50px !important; - z-index: 840; - } - .sidebar-mini.sidebar-collapse .main-sidebar { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); - width: 50px !important; - z-index: 850; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li { - position: relative; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li > a { - margin-right: 0; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > span { - border-top-right-radius: 4px; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li:not(.treeview) > a > span { - border-bottom-right-radius: 4px; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu { - padding-top: 5px; - padding-bottom: 5px; - border-bottom-right-radius: 4px; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > span:not(.pull-right), - .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > .treeview-menu { - display: block !important; - position: absolute; - width: 180px; - left: 50px; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > span { - top: 0; - margin-left: -3px; - padding: 12px 5px 12px 20px; - background-color: inherit; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container { - float: right; - width: auto!important; - left: 200px!important; - top: 10px!important; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container > .label:not(:first-of-type) { - display: none; - } - .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > .treeview-menu { - top: 44px; - margin-left: 0; - } - .sidebar-mini.sidebar-collapse .main-sidebar .user-panel > .info, - .sidebar-mini.sidebar-collapse .sidebar-form, - .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > span, - .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu, - .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > .pull-right, - .sidebar-mini.sidebar-collapse .sidebar-menu li.header { - display: none !important; - -webkit-transform: translateZ(0); - } - .sidebar-mini.sidebar-collapse .main-header .logo { - width: 50px; - } - .sidebar-mini.sidebar-collapse .main-header .logo > .logo-mini { - display: block; - margin-left: -15px; - margin-right: -15px; - font-size: 18px; - } - .sidebar-mini.sidebar-collapse .main-header .logo > .logo-lg { - display: none; - } - .sidebar-mini.sidebar-collapse .main-header .navbar { - margin-left: 50px; - } + .sidebar-mini.sidebar-collapse .content-wrapper, + .sidebar-mini.sidebar-collapse .right-side, + .sidebar-mini.sidebar-collapse .main-footer { + margin-left: 50px !important; + z-index: 840; + } + + .sidebar-mini.sidebar-collapse .main-sidebar { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); + width: 50px !important; + z-index: 850; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li { + position: relative; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a { + margin-right: 0; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > span { + border-top-right-radius: 4px; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li:not(.treeview) > a > span { + border-bottom-right-radius: 4px; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu { + padding-top: 5px; + padding-bottom: 5px; + border-bottom-right-radius: 4px; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > span:not(.pull-right), + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > .treeview-menu { + display: block !important; + position: absolute; + width: 180px; + left: 50px; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > span { + top: 0; + margin-left: -3px; + padding: 12px 5px 12px 20px; + background-color: inherit; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container { + float: right; + width: auto !important; + left: 200px !important; + top: 10px !important; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > a > .pull-right-container > .label:not(:first-of-type) { + display: none; + } + + .sidebar-mini.sidebar-collapse .sidebar-menu > li:hover > .treeview-menu { + top: 44px; + margin-left: 0; + } + + .sidebar-mini.sidebar-collapse .main-sidebar .user-panel > .info, + .sidebar-mini.sidebar-collapse .sidebar-form, + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > span, + .sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu, + .sidebar-mini.sidebar-collapse .sidebar-menu > li > a > .pull-right, + .sidebar-mini.sidebar-collapse .sidebar-menu li.header { + display: none !important; + -webkit-transform: translateZ(0); + } + + .sidebar-mini.sidebar-collapse .main-header .logo { + width: 50px; + } + + .sidebar-mini.sidebar-collapse .main-header .logo > .logo-mini { + display: block; + margin-left: -15px; + margin-right: -15px; + font-size: 18px; + } + + .sidebar-mini.sidebar-collapse .main-header .logo > .logo-lg { + display: none; + } + + .sidebar-mini.sidebar-collapse .main-header .navbar { + margin-left: 50px; + } } + .sidebar-menu, .main-sidebar .user-panel, .sidebar-menu > li.header { - white-space: nowrap; - overflow: hidden; + white-space: nowrap; + overflow: hidden; } + .sidebar-menu:hover { - overflow: visible; + overflow: visible; } + .sidebar-form, .sidebar-menu > li.header { - overflow: hidden; - text-overflow: clip; + overflow: hidden; + text-overflow: clip; } + .sidebar-menu li > a { - position: relative; + position: relative; } + .sidebar-menu li > a > .pull-right-container { - position: absolute; - right: 10px; - top: 50%; - margin-top: -7px; + position: absolute; + right: 10px; + top: 50%; + margin-top: -7px; } + /* * Component: Control sidebar. By default, this is the right sidebar. */ .control-sidebar-bg { - position: fixed; - z-index: 1000; - bottom: 0; + position: fixed; + z-index: 1000; + bottom: 0; } + .control-sidebar-bg, .control-sidebar { - top: 0; - right: -230px; - width: 230px; - -webkit-transition: right 0.3s ease-in-out; - -o-transition: right 0.3s ease-in-out; - transition: right 0.3s ease-in-out; + top: 0; + right: -230px; + width: 230px; + -webkit-transition: right 0.3s ease-in-out; + -o-transition: right 0.3s ease-in-out; + transition: right 0.3s ease-in-out; } + .control-sidebar { - position: absolute; - padding-top: 50px; - z-index: 1010; + position: absolute; + padding-top: 50px; + z-index: 1010; } + @media (max-width: 768px) { - .control-sidebar { - padding-top: 100px; - } + .control-sidebar { + padding-top: 100px; + } } + .control-sidebar > .tab-content { - padding: 10px 15px; + padding: 10px 15px; } + .control-sidebar.control-sidebar-open, .control-sidebar.control-sidebar-open + .control-sidebar-bg { - right: 0; + right: 0; } + .control-sidebar-open .control-sidebar-bg, .control-sidebar-open .control-sidebar { - right: 0; + right: 0; } + @media (min-width: 768px) { - .control-sidebar-open .content-wrapper, - .control-sidebar-open .right-side, - .control-sidebar-open .main-footer { - margin-right: 230px; - } + .control-sidebar-open .content-wrapper, + .control-sidebar-open .right-side, + .control-sidebar-open .main-footer { + margin-right: 230px; + } } + .nav-tabs.control-sidebar-tabs > li:first-of-type > a, .nav-tabs.control-sidebar-tabs > li:first-of-type > a:hover, .nav-tabs.control-sidebar-tabs > li:first-of-type > a:focus { - border-left-width: 0; + border-left-width: 0; } + .nav-tabs.control-sidebar-tabs > li > a { - border-radius: 0; + border-radius: 0; } + .nav-tabs.control-sidebar-tabs > li > a, .nav-tabs.control-sidebar-tabs > li > a:hover { - border-top: none; - border-right: none; - border-left: 1px solid transparent; - border-bottom: 1px solid transparent; + border-top: none; + border-right: none; + border-left: 1px solid transparent; + border-bottom: 1px solid transparent; } + .nav-tabs.control-sidebar-tabs > li > a .icon { - font-size: 16px; + font-size: 16px; } + .nav-tabs.control-sidebar-tabs > li.active > a, .nav-tabs.control-sidebar-tabs > li.active > a:hover, .nav-tabs.control-sidebar-tabs > li.active > a:focus, .nav-tabs.control-sidebar-tabs > li.active > a:active { - border-top: none; - border-right: none; - border-bottom: none; + border-top: none; + border-right: none; + border-bottom: none; } + @media (max-width: 768px) { - .nav-tabs.control-sidebar-tabs { - display: table; - } - .nav-tabs.control-sidebar-tabs > li { - display: table-cell; - } + .nav-tabs.control-sidebar-tabs { + display: table; + } + + .nav-tabs.control-sidebar-tabs > li { + display: table-cell; + } } + .control-sidebar-heading { - font-weight: 400; - font-size: 16px; - padding: 10px 0; - margin-bottom: 10px; + font-weight: 400; + font-size: 16px; + padding: 10px 0; + margin-bottom: 10px; } + .control-sidebar-subheading { - display: block; - font-weight: 400; - font-size: 14px; + display: block; + font-weight: 400; + font-size: 14px; } + .control-sidebar-menu { - list-style: none; - padding: 0; - margin: 0 -15px; + list-style: none; + padding: 0; + margin: 0 -15px; } + .control-sidebar-menu > li > a { - display: block; - padding: 10px 15px; + display: block; + padding: 10px 15px; } + .control-sidebar-menu > li > a:before, .control-sidebar-menu > li > a:after { - content: " "; - display: table; + content: " "; + display: table; } + .control-sidebar-menu > li > a:after { - clear: both; + clear: both; } + .control-sidebar-menu > li > a > .control-sidebar-subheading { - margin-top: 0; + margin-top: 0; } + .control-sidebar-menu .menu-icon { - float: left; - width: 35px; - height: 35px; - border-radius: 50%; - text-align: center; - line-height: 35px; + float: left; + width: 35px; + height: 35px; + border-radius: 50%; + text-align: center; + line-height: 35px; } + .control-sidebar-menu .menu-info { - margin-left: 45px; - margin-top: 3px; + margin-left: 45px; + margin-top: 3px; } + .control-sidebar-menu .menu-info > .control-sidebar-subheading { - margin: 0; + margin: 0; } + .control-sidebar-menu .menu-info > p { - margin: 0; - font-size: 11px; + margin: 0; + font-size: 11px; } + .control-sidebar-menu .progress { - margin: 0; + margin: 0; } + .control-sidebar-dark { - color: #b8c7ce; + color: #b8c7ce; } + .control-sidebar-dark, .control-sidebar-dark + .control-sidebar-bg { - background: #222d32; + background: #222d32; } + .control-sidebar-dark .nav-tabs.control-sidebar-tabs { - border-bottom: #1c2529; + border-bottom: #1c2529; } + .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a { - background: #181f23; - color: #b8c7ce; + background: #181f23; + color: #b8c7ce; } + .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a, .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:hover, .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:focus { - border-left-color: #141a1d; - border-bottom-color: #141a1d; + border-left-color: #141a1d; + border-bottom-color: #141a1d; } + .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:hover, .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:focus, .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:active { - background: #1c2529; + background: #1c2529; } + .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li > a:hover { - color: #fff; + color: #fff; } + .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a, .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a:hover, .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a:focus, .control-sidebar-dark .nav-tabs.control-sidebar-tabs > li.active > a:active { - background: #222d32; - color: #fff; + background: #222d32; + color: #fff; } + .control-sidebar-dark .control-sidebar-heading, .control-sidebar-dark .control-sidebar-subheading { - color: #fff; + color: #fff; } + .control-sidebar-dark .control-sidebar-menu > li > a:hover { - background: #1e282c; + background: #1e282c; } + .control-sidebar-dark .control-sidebar-menu > li > a .menu-info > p { - color: #b8c7ce; + color: #b8c7ce; } + .control-sidebar-light { - color: #5e5e5e; + color: #5e5e5e; } + .control-sidebar-light, .control-sidebar-light + .control-sidebar-bg { - background: #f9fafc; - border-left: 1px solid #d2d6de; + background: #f9fafc; + border-left: 1px solid #d2d6de; } + .control-sidebar-light .nav-tabs.control-sidebar-tabs { - border-bottom: #d2d6de; + border-bottom: #d2d6de; } + .control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a { - background: #e8ecf4; - color: #444444; + background: #e8ecf4; + color: #444444; } + .control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a, .control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:hover, .control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:focus { - border-left-color: #d2d6de; - border-bottom-color: #d2d6de; + border-left-color: #d2d6de; + border-bottom-color: #d2d6de; } + .control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:hover, .control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:focus, .control-sidebar-light .nav-tabs.control-sidebar-tabs > li > a:active { - background: #eff1f7; + background: #eff1f7; } + .control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a, .control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a:hover, .control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a:focus, .control-sidebar-light .nav-tabs.control-sidebar-tabs > li.active > a:active { - background: #f9fafc; - color: #111; + background: #f9fafc; + color: #111; } + .control-sidebar-light .control-sidebar-heading, .control-sidebar-light .control-sidebar-subheading { - color: #111; + color: #111; } + .control-sidebar-light .control-sidebar-menu { - margin-left: -14px; + margin-left: -14px; } + .control-sidebar-light .control-sidebar-menu > li > a:hover { - background: #f4f4f5; + background: #f4f4f5; } + .control-sidebar-light .control-sidebar-menu > li > a .menu-info > p { - color: #5e5e5e; + color: #5e5e5e; } + /* * Component: Dropdown menus * ------------------------- */ /*Dropdowns in general*/ .dropdown-menu { - box-shadow: none; - border-color: #eee; + box-shadow: none; + border-color: #eee; } + .dropdown-menu > li > a { - color: #777; + color: #777; } + .dropdown-menu > li > a > .glyphicon, .dropdown-menu > li > a > .fa, .dropdown-menu > li > a > .ion { - margin-right: 10px; + margin-right: 10px; } + .dropdown-menu > li > a:hover { - background-color: #e1e3e9; - color: #333; + background-color: #e1e3e9; + color: #333; } + .dropdown-menu > .divider { - background-color: #eee; + background-color: #eee; } + .navbar-nav > .notifications-menu > .dropdown-menu, .navbar-nav > .messages-menu > .dropdown-menu, .navbar-nav > .tasks-menu > .dropdown-menu { - width: 280px; - padding: 0 0 0 0; - margin: 0; - top: 100%; + width: 280px; + padding: 0 0 0 0; + margin: 0; + top: 100%; } + .navbar-nav > .notifications-menu > .dropdown-menu > li, .navbar-nav > .messages-menu > .dropdown-menu > li, .navbar-nav > .tasks-menu > .dropdown-menu > li { - position: relative; + position: relative; } + .navbar-nav > .notifications-menu > .dropdown-menu > li.header, .navbar-nav > .messages-menu > .dropdown-menu > li.header, .navbar-nav > .tasks-menu > .dropdown-menu > li.header { - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - background-color: #ffffff; - padding: 7px 10px; - border-bottom: 1px solid #f4f4f4; - color: #444444; - font-size: 14px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + background-color: #ffffff; + padding: 7px 10px; + border-bottom: 1px solid #f4f4f4; + color: #444444; + font-size: 14px; } + .navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a, .navbar-nav > .messages-menu > .dropdown-menu > li.footer > a, .navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 4px; - border-bottom-left-radius: 4px; - font-size: 12px; - background-color: #fff; - padding: 7px 10px; - border-bottom: 1px solid #eeeeee; - color: #444 !important; - text-align: center; -} -@media (max-width: 991px) { - .navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a, - .navbar-nav > .messages-menu > .dropdown-menu > li.footer > a, - .navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a { - background: #fff !important; + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; + font-size: 12px; + background-color: #fff; + padding: 7px 10px; + border-bottom: 1px solid #eeeeee; color: #444 !important; - } + text-align: center; } + +@media (max-width: 991px) { + .navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a, + .navbar-nav > .messages-menu > .dropdown-menu > li.footer > a, + .navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a { + background: #fff !important; + color: #444 !important; + } +} + .navbar-nav > .notifications-menu > .dropdown-menu > li.footer > a:hover, .navbar-nav > .messages-menu > .dropdown-menu > li.footer > a:hover, .navbar-nav > .tasks-menu > .dropdown-menu > li.footer > a:hover { - text-decoration: none; - font-weight: normal; + text-decoration: none; + font-weight: normal; } + .navbar-nav > .notifications-menu > .dropdown-menu > li .menu, .navbar-nav > .messages-menu > .dropdown-menu > li .menu, .navbar-nav > .tasks-menu > .dropdown-menu > li .menu { - max-height: 200px; - margin: 0; - padding: 0; - list-style: none; - overflow-x: hidden; + max-height: 200px; + margin: 0; + padding: 0; + list-style: none; + overflow-x: hidden; } + .navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a, .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a, .navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a { - display: block; - white-space: nowrap; - /* Prevent text from breaking */ - border-bottom: 1px solid #f4f4f4; + display: block; + white-space: nowrap; + /* Prevent text from breaking */ + border-bottom: 1px solid #f4f4f4; } + .navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a:hover, .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:hover, .navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a:hover { - background: #f4f4f4; - text-decoration: none; + background: #f4f4f4; + text-decoration: none; } + .navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a { - color: #444444; - overflow: hidden; - text-overflow: ellipsis; - padding: 10px; + color: #444444; + overflow: hidden; + text-overflow: ellipsis; + padding: 10px; } + .navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .glyphicon, .navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .fa, .navbar-nav > .notifications-menu > .dropdown-menu > li .menu > li > a > .ion { - width: 20px; + width: 20px; } + .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a { - margin: 0; - padding: 10px 10px; + margin: 0; + padding: 10px 10px; } + .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > div > img { - margin: auto 10px auto auto; - width: 40px; - height: 40px; + margin: auto 10px auto auto; + width: 40px; + height: 40px; } + .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > h4 { - padding: 0; - margin: 0 0 0 45px; - color: #444444; - font-size: 15px; - position: relative; + padding: 0; + margin: 0 0 0 45px; + color: #444444; + font-size: 15px; + position: relative; } + .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > h4 > small { - color: #999999; - font-size: 10px; - position: absolute; - top: 0; - right: 0; + color: #999999; + font-size: 10px; + position: absolute; + top: 0; + right: 0; } + .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a > p { - margin: 0 0 0 45px; - font-size: 12px; - color: #888888; + margin: 0 0 0 45px; + font-size: 12px; + color: #888888; } + .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:before, .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:after { - content: " "; - display: table; + content: " "; + display: table; } + .navbar-nav > .messages-menu > .dropdown-menu > li .menu > li > a:after { - clear: both; + clear: both; } + .navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a { - padding: 10px; + padding: 10px; } + .navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a > h3 { - font-size: 14px; - padding: 0; - margin: 0 0 10px 0; - color: #666666; + font-size: 14px; + padding: 0; + margin: 0 0 10px 0; + color: #666666; } + .navbar-nav > .tasks-menu > .dropdown-menu > li .menu > li > a > .progress { - padding: 0; - margin: 0; + padding: 0; + margin: 0; } + .navbar-nav > .user-menu > .dropdown-menu { - border-top-right-radius: 0; - border-top-left-radius: 0; - padding: 1px 0 0 0; - border-top-width: 0; - width: 280px; + border-top-right-radius: 0; + border-top-left-radius: 0; + padding: 1px 0 0 0; + border-top-width: 0; + width: 280px; } + .navbar-nav > .user-menu > .dropdown-menu, .navbar-nav > .user-menu > .dropdown-menu > .user-body { - border-bottom-right-radius: 4px; - border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; } + .navbar-nav > .user-menu > .dropdown-menu > li.user-header { - height: 175px; - padding: 10px; - text-align: center; + height: 175px; + padding: 10px; + text-align: center; } + .navbar-nav > .user-menu > .dropdown-menu > li.user-header > img { - z-index: 5; - height: 90px; - width: 90px; - border: 3px solid; - border-color: transparent; - border-color: rgba(255, 255, 255, 0.2); + z-index: 5; + height: 90px; + width: 90px; + border: 3px solid; + border-color: transparent; + border-color: rgba(255, 255, 255, 0.2); } + .navbar-nav > .user-menu > .dropdown-menu > li.user-header > p { - z-index: 5; - color: #fff; - color: rgba(255, 255, 255, 0.8); - font-size: 17px; - margin-top: 10px; + z-index: 5; + color: #fff; + color: rgba(255, 255, 255, 0.8); + font-size: 17px; + margin-top: 10px; } + .navbar-nav > .user-menu > .dropdown-menu > li.user-header > p > small { - display: block; - font-size: 12px; + display: block; + font-size: 12px; } + .navbar-nav > .user-menu > .dropdown-menu > .user-body { - padding: 15px; - border-bottom: 1px solid #f4f4f4; - border-top: 1px solid #dddddd; + padding: 15px; + border-bottom: 1px solid #f4f4f4; + border-top: 1px solid #dddddd; } + .navbar-nav > .user-menu > .dropdown-menu > .user-body:before, .navbar-nav > .user-menu > .dropdown-menu > .user-body:after { - content: " "; - display: table; + content: " "; + display: table; } + .navbar-nav > .user-menu > .dropdown-menu > .user-body:after { - clear: both; + clear: both; } + .navbar-nav > .user-menu > .dropdown-menu > .user-body a { - color: #444 !important; -} -@media (max-width: 991px) { - .navbar-nav > .user-menu > .dropdown-menu > .user-body a { - background: #fff !important; color: #444 !important; - } } + +@media (max-width: 991px) { + .navbar-nav > .user-menu > .dropdown-menu > .user-body a { + background: #fff !important; + color: #444 !important; + } +} + .navbar-nav > .user-menu > .dropdown-menu > .user-footer { - background-color: #f9f9f9; - padding: 10px; + background-color: #f9f9f9; + padding: 10px; } + .navbar-nav > .user-menu > .dropdown-menu > .user-footer:before, .navbar-nav > .user-menu > .dropdown-menu > .user-footer:after { - content: " "; - display: table; + content: " "; + display: table; } + .navbar-nav > .user-menu > .dropdown-menu > .user-footer:after { - clear: both; + clear: both; } + .navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-default { - color: #666666; + color: #666666; } + @media (max-width: 991px) { - .navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-default:hover { - background-color: #f9f9f9; - } + .navbar-nav > .user-menu > .dropdown-menu > .user-footer .btn-default:hover { + background-color: #f9f9f9; + } } + .navbar-nav > .user-menu .user-image { - float: left; - width: 25px; - height: 25px; - border-radius: 50%; - margin-right: 10px; - margin-top: -2px; + float: left; + width: 25px; + height: 25px; + border-radius: 50%; + margin-right: 10px; + margin-top: -2px; } + @media (max-width: 767px) { - .navbar-nav > .user-menu .user-image { - float: none; - margin-right: 0; - margin-top: -8px; - line-height: 10px; - } + .navbar-nav > .user-menu .user-image { + float: none; + margin-right: 0; + margin-top: -8px; + line-height: 10px; + } } + /* Add fade animation to dropdown menus by appending the class .animated-dropdown-menu to the .dropdown-menu ul (or ol)*/ .open:not(.dropup) > .animated-dropdown-menu { - backface-visibility: visible !important; - -webkit-animation: flipInX 0.7s both; - -o-animation: flipInX 0.7s both; - animation: flipInX 0.7s both; + backface-visibility: visible !important; + -webkit-animation: flipInX 0.7s both; + -o-animation: flipInX 0.7s both; + animation: flipInX 0.7s both; } + @keyframes flipInX { - 0% { - transform: perspective(400px) rotate3d(1, 0, 0, 90deg); - transition-timing-function: ease-in; - opacity: 0; - } - 40% { - transform: perspective(400px) rotate3d(1, 0, 0, -20deg); - transition-timing-function: ease-in; - } - 60% { - transform: perspective(400px) rotate3d(1, 0, 0, 10deg); - opacity: 1; - } - 80% { - transform: perspective(400px) rotate3d(1, 0, 0, -5deg); - } - 100% { - transform: perspective(400px); - } + 0% { + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transition-timing-function: ease-in; + opacity: 0; + } + 40% { + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transition-timing-function: ease-in; + } + 60% { + transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + 80% { + transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + 100% { + transform: perspective(400px); + } } + @-webkit-keyframes flipInX { - 0% { - -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); - -webkit-transition-timing-function: ease-in; - opacity: 0; - } - 40% { - -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); - -webkit-transition-timing-function: ease-in; - } - 60% { - -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); - opacity: 1; - } - 80% { - -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); - } - 100% { - -webkit-transform: perspective(400px); - } + 0% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + -webkit-transition-timing-function: ease-in; + opacity: 0; + } + 40% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + -webkit-transition-timing-function: ease-in; + } + 60% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + 80% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + 100% { + -webkit-transform: perspective(400px); + } } + /* Fix dropdown menu in navbars */ .navbar-custom-menu > .navbar-nav > li { - position: relative; + position: relative; } + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { - position: absolute; - right: 0; - left: auto; -} -@media (max-width: 991px) { - .navbar-custom-menu > .navbar-nav { - float: right; - } - .navbar-custom-menu > .navbar-nav > li { - position: static; - } - .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { position: absolute; - right: 5%; + right: 0; left: auto; - border: 1px solid #ddd; - background: #fff; - } } + +@media (max-width: 991px) { + .navbar-custom-menu > .navbar-nav { + float: right; + } + + .navbar-custom-menu > .navbar-nav > li { + position: static; + } + + .navbar-custom-menu > .navbar-nav > li > .dropdown-menu { + position: absolute; + right: 5%; + left: auto; + border: 1px solid #ddd; + background: #fff; + } +} + /* * Component: Form * --------------- */ .form-control { - border-radius: 0; - box-shadow: none; - border-color: #d2d6de; + border-radius: 0; + box-shadow: none; + border-color: #d2d6de; } + .form-control:focus { - border-color: #3c8dbc; - box-shadow: none; + border-color: #3c8dbc; + box-shadow: none; } + .form-control::-moz-placeholder, .form-control:-ms-input-placeholder, .form-control::-webkit-input-placeholder { - color: #bbb; - opacity: 1; + color: #bbb; + opacity: 1; } + .form-control:not(select) { - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; } + .form-group.has-success label { - color: #00a65a; + color: #00a65a; } + .form-group.has-success .form-control, .form-group.has-success .input-group-addon { - border-color: #00a65a; - box-shadow: none; + border-color: #00a65a; + box-shadow: none; } + .form-group.has-success .help-block { - color: #00a65a; + color: #00a65a; } + .form-group.has-warning label { - color: #f39c12; + color: #f39c12; } + .form-group.has-warning .form-control, .form-group.has-warning .input-group-addon { - border-color: #f39c12; - box-shadow: none; + border-color: #f39c12; + box-shadow: none; } + .form-group.has-warning .help-block { - color: #f39c12; + color: #f39c12; } + .form-group.has-error label { - color: #dd4b39; + color: #dd4b39; } + .form-group.has-error .form-control, .form-group.has-error .input-group-addon { - border-color: #dd4b39; - box-shadow: none; + border-color: #dd4b39; + box-shadow: none; } + .form-group.has-error .help-block { - color: #dd4b39; + color: #dd4b39; } + /* Input group */ .input-group .input-group-addon { - border-radius: 0; - border-color: #d2d6de; - background-color: #fff; + border-radius: 0; + border-color: #d2d6de; + background-color: #fff; } + /* button groups */ .btn-group-vertical .btn.btn-flat:first-of-type, .btn-group-vertical .btn.btn-flat:last-of-type { - border-radius: 0; + border-radius: 0; } + .icheck > label { - padding-left: 0; + padding-left: 0; } + /* support Font Awesome icons in form-control */ .form-control-feedback.fa { - line-height: 34px; + line-height: 34px; } + .input-lg + .form-control-feedback.fa, .input-group-lg + .form-control-feedback.fa, .form-group-lg .form-control + .form-control-feedback.fa { - line-height: 46px; + line-height: 46px; } + .input-sm + .form-control-feedback.fa, .input-group-sm + .form-control-feedback.fa, .form-group-sm .form-control + .form-control-feedback.fa { - line-height: 30px; + line-height: 30px; } + /* * Component: Progress Bar * ----------------------- */ .progress, .progress > .progress-bar { - -webkit-box-shadow: none; - box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; } + .progress, .progress > .progress-bar, .progress .progress-bar, .progress > .progress-bar .progress-bar { - border-radius: 1px; + border-radius: 1px; } + /* size variation */ .progress.sm, .progress-sm { - height: 10px; + height: 10px; } + .progress.sm, .progress-sm, .progress.sm .progress-bar, .progress-sm .progress-bar { - border-radius: 1px; + border-radius: 1px; } + .progress.xs, .progress-xs { - height: 7px; + height: 7px; } + .progress.xs, .progress-xs, .progress.xs .progress-bar, .progress-xs .progress-bar { - border-radius: 1px; + border-radius: 1px; } + .progress.xxs, .progress-xxs { - height: 3px; + height: 3px; } + .progress.xxs, .progress-xxs, .progress.xxs .progress-bar, .progress-xxs .progress-bar { - border-radius: 1px; + border-radius: 1px; } + /* Vertical bars */ .progress.vertical { - position: relative; - width: 30px; - height: 200px; - display: inline-block; - margin-right: 10px; + position: relative; + width: 30px; + height: 200px; + display: inline-block; + margin-right: 10px; } + .progress.vertical > .progress-bar { - width: 100%; - position: absolute; - bottom: 0; + width: 100%; + position: absolute; + bottom: 0; } + .progress.vertical.sm, .progress.vertical.progress-sm { - width: 20px; + width: 20px; } + .progress.vertical.xs, .progress.vertical.progress-xs { - width: 10px; + width: 10px; } + .progress.vertical.xxs, .progress.vertical.progress-xxs { - width: 3px; + width: 3px; } + .progress-group .progress-text { - font-weight: 600; + font-weight: 600; } + .progress-group .progress-number { - float: right; + float: right; } + /* Remove margins from progress bars when put in a table */ .table tr > td .progress { - margin: 0; + margin: 0; } + .progress-bar-light-blue, .progress-bar-primary { - background-color: #3c8dbc; + background-color: #3c8dbc; } + .progress-striped .progress-bar-light-blue, .progress-striped .progress-bar-primary { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } + .progress-bar-green, .progress-bar-success { - background-color: #00a65a; + background-color: #00a65a; } + .progress-striped .progress-bar-green, .progress-striped .progress-bar-success { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } + .progress-bar-aqua, .progress-bar-info { - background-color: #00c0ef; + background-color: #00c0ef; } + .progress-striped .progress-bar-aqua, .progress-striped .progress-bar-info { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } + .progress-bar-yellow, .progress-bar-warning { - background-color: #f39c12; + background-color: #f39c12; } + .progress-striped .progress-bar-yellow, .progress-striped .progress-bar-warning { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } + .progress-bar-red, .progress-bar-danger { - background-color: #dd4b39; + background-color: #dd4b39; } + .progress-striped .progress-bar-red, .progress-striped .progress-bar-danger { - background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } + /* * Component: Small Box * -------------------- */ .small-box { - border-radius: 2px; - position: relative; - display: block; - margin-bottom: 20px; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 2px; + position: relative; + display: block; + margin-bottom: 20px; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); } + .small-box > .inner { - padding: 10px; + padding: 10px; } + .small-box > .small-box-footer { - position: relative; - text-align: center; - padding: 3px 0; - color: #fff; - color: rgba(255, 255, 255, 0.8); - display: block; - z-index: 10; - background: rgba(0, 0, 0, 0.1); - text-decoration: none; + position: relative; + text-align: center; + padding: 3px 0; + color: #fff; + color: rgba(255, 255, 255, 0.8); + display: block; + z-index: 10; + background: rgba(0, 0, 0, 0.1); + text-decoration: none; } + .small-box > .small-box-footer:hover { - color: #fff; - background: rgba(0, 0, 0, 0.15); + color: #fff; + background: rgba(0, 0, 0, 0.15); } + .small-box h3 { - font-size: 38px; - font-weight: bold; - margin: 0 0 10px 0; - white-space: nowrap; - padding: 0; + font-size: 38px; + font-weight: bold; + margin: 0 0 10px 0; + white-space: nowrap; + padding: 0; } + .small-box p { - font-size: 15px; + font-size: 15px; } + .small-box p > small { - display: block; - color: #f9f9f9; - font-size: 13px; - margin-top: 5px; + display: block; + color: #f9f9f9; + font-size: 13px; + margin-top: 5px; } + .small-box h3, .small-box p { - z-index: 5; + z-index: 5; } + .small-box .icon { - -webkit-transition: all 0.3s linear; - -o-transition: all 0.3s linear; - transition: all 0.3s linear; - position: absolute; - top: -10px; - right: 10px; - z-index: 0; - font-size: 90px; - color: rgba(0, 0, 0, 0.15); + -webkit-transition: all 0.3s linear; + -o-transition: all 0.3s linear; + transition: all 0.3s linear; + position: absolute; + top: -10px; + right: 10px; + z-index: 0; + font-size: 90px; + color: rgba(0, 0, 0, 0.15); } + .small-box:hover { - text-decoration: none; - color: #f9f9f9; + text-decoration: none; + color: #f9f9f9; } + .small-box:hover .icon { - font-size: 95px; + font-size: 95px; } + @media (max-width: 767px) { - .small-box { - text-align: center; - } - .small-box .icon { - display: none; - } - .small-box p { - font-size: 12px; - } + .small-box { + text-align: center; + } + + .small-box .icon { + display: none; + } + + .small-box p { + font-size: 12px; + } } + /* * Component: Box * -------------- */ .box { - position: relative; - border-radius: 3px; - background: #ffffff; - border-top: 3px solid #d2d6de; - margin-bottom: 20px; - width: 100%; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + position: relative; + border-radius: 3px; + background: #ffffff; + border-top: 3px solid #d2d6de; + margin-bottom: 20px; + width: 100%; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); } + .box.box-primary { - border-top-color: #3c8dbc; + border-top-color: #3c8dbc; } + .box.box-info { - border-top-color: #00c0ef; + border-top-color: #00c0ef; } + .box.box-danger { - border-top-color: #dd4b39; + border-top-color: #dd4b39; } + .box.box-warning { - border-top-color: #f39c12; + border-top-color: #f39c12; } + .box.box-success { - border-top-color: #00a65a; + border-top-color: #00a65a; } + .box.box-default { - border-top-color: #d2d6de; + border-top-color: #d2d6de; } + .box.collapsed-box .box-body, .box.collapsed-box .box-footer { - display: none; + display: none; } + .box .nav-stacked > li { - border-bottom: 1px solid #f4f4f4; - margin: 0; + border-bottom: 1px solid #f4f4f4; + margin: 0; } + .box .nav-stacked > li:last-of-type { - border-bottom: none; + border-bottom: none; } + .box.height-control .box-body { - max-height: 300px; - overflow: auto; + max-height: 300px; + overflow: auto; } + .box .border-right { - border-right: 1px solid #f4f4f4; + border-right: 1px solid #f4f4f4; } + .box .border-left { - border-left: 1px solid #f4f4f4; + border-left: 1px solid #f4f4f4; } + .box.box-solid { - border-top: 0; + border-top: 0; } + .box.box-solid > .box-header .btn.btn-default { - background: transparent; + background: transparent; } + .box.box-solid > .box-header .btn:hover, .box.box-solid > .box-header a:hover { - background: rgba(0, 0, 0, 0.1); + background: rgba(0, 0, 0, 0.1); } + .box.box-solid.box-default { - border: 1px solid #d2d6de; + border: 1px solid #d2d6de; } + .box.box-solid.box-default > .box-header { - color: #444444; - background: #d2d6de; - background-color: #d2d6de; + color: #444444; + background: #d2d6de; + background-color: #d2d6de; } + .box.box-solid.box-default > .box-header a, .box.box-solid.box-default > .box-header .btn { - color: #444444; + color: #444444; } + .box.box-solid.box-primary { - border: 1px solid #3c8dbc; + border: 1px solid #3c8dbc; } + .box.box-solid.box-primary > .box-header { - color: #ffffff; - background: #3c8dbc; - background-color: #3c8dbc; + color: #ffffff; + background: #3c8dbc; + background-color: #3c8dbc; } + .box.box-solid.box-primary > .box-header a, .box.box-solid.box-primary > .box-header .btn { - color: #ffffff; + color: #ffffff; } + .box.box-solid.box-info { - border: 1px solid #00c0ef; + border: 1px solid #00c0ef; } + .box.box-solid.box-info > .box-header { - color: #ffffff; - background: #00c0ef; - background-color: #00c0ef; + color: #ffffff; + background: #00c0ef; + background-color: #00c0ef; } + .box.box-solid.box-info > .box-header a, .box.box-solid.box-info > .box-header .btn { - color: #ffffff; + color: #ffffff; } + .box.box-solid.box-danger { - border: 1px solid #dd4b39; + border: 1px solid #dd4b39; } + .box.box-solid.box-danger > .box-header { - color: #ffffff; - background: #dd4b39; - background-color: #dd4b39; + color: #ffffff; + background: #dd4b39; + background-color: #dd4b39; } + .box.box-solid.box-danger > .box-header a, .box.box-solid.box-danger > .box-header .btn { - color: #ffffff; + color: #ffffff; } + .box.box-solid.box-warning { - border: 1px solid #f39c12; + border: 1px solid #f39c12; } + .box.box-solid.box-warning > .box-header { - color: #ffffff; - background: #f39c12; - background-color: #f39c12; + color: #ffffff; + background: #f39c12; + background-color: #f39c12; } + .box.box-solid.box-warning > .box-header a, .box.box-solid.box-warning > .box-header .btn { - color: #ffffff; + color: #ffffff; } + .box.box-solid.box-success { - border: 1px solid #00a65a; + border: 1px solid #00a65a; } + .box.box-solid.box-success > .box-header { - color: #ffffff; - background: #00a65a; - background-color: #00a65a; + color: #ffffff; + background: #00a65a; + background-color: #00a65a; } + .box.box-solid.box-success > .box-header a, .box.box-solid.box-success > .box-header .btn { - color: #ffffff; + color: #ffffff; } + .box.box-solid > .box-header > .box-tools .btn { - border: 0; - box-shadow: none; + border: 0; + box-shadow: none; } + .box.box-solid[class*='bg'] > .box-header { - color: #fff; + color: #fff; } + .box .box-group > .box { - margin-bottom: 5px; + margin-bottom: 5px; } + .box .knob-label { - text-align: center; - color: #333; - font-weight: 100; - font-size: 12px; - margin-bottom: 0.3em; + text-align: center; + color: #333; + font-weight: 100; + font-size: 12px; + margin-bottom: 0.3em; } + .box > .overlay, .overlay-wrapper > .overlay, .box > .loading-img, .overlay-wrapper > .loading-img { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; } + .box .overlay, .overlay-wrapper .overlay { - z-index: 50; - background: rgba(255, 255, 255, 0.7); - border-radius: 3px; + z-index: 50; + background: rgba(255, 255, 255, 0.7); + border-radius: 3px; } + .box .overlay > .fa, .overlay-wrapper .overlay > .fa { - position: absolute; - top: 50%; - left: 50%; - margin-left: -15px; - margin-top: -15px; - color: #000; - font-size: 30px; + position: absolute; + top: 50%; + left: 50%; + margin-left: -15px; + margin-top: -15px; + color: #000; + font-size: 30px; } + .box .overlay.dark, .overlay-wrapper .overlay.dark { - background: rgba(0, 0, 0, 0.5); + background: rgba(0, 0, 0, 0.5); } + .box-header:before, .box-body:before, .box-footer:before, .box-header:after, .box-body:after, .box-footer:after { - content: " "; - display: table; + content: " "; + display: table; } + .box-header:after, .box-body:after, .box-footer:after { - clear: both; + clear: both; } + .box-header { - color: #444; - display: block; - padding: 10px; - position: relative; + color: #444; + display: block; + padding: 10px; + position: relative; } + .box-header.with-border { - border-bottom: 1px solid #f4f4f4; + border-bottom: 1px solid #f4f4f4; } + .collapsed-box .box-header.with-border { - border-bottom: none; + border-bottom: none; } + .box-header > .fa, .box-header > .glyphicon, .box-header > .ion, .box-header .box-title { - display: inline-block; - font-size: 18px; - margin: 0; - line-height: 1; + display: inline-block; + font-size: 18px; + margin: 0; + line-height: 1; } + .box-header > .fa, .box-header > .glyphicon, .box-header > .ion { - margin-right: 5px; + margin-right: 5px; } + .box-header > .box-tools { - position: absolute; - right: 10px; - top: 5px; + position: absolute; + right: 10px; + top: 5px; } + .box-header > .box-tools [data-toggle="tooltip"] { - position: relative; + position: relative; } + .box-header > .box-tools.pull-right .dropdown-menu { - right: 0; - left: auto; + right: 0; + left: auto; } + .btn-box-tool { - padding: 5px; - font-size: 12px; - background: transparent; - color: #97a0b3; + padding: 5px; + font-size: 12px; + background: transparent; + color: #97a0b3; } + .open .btn-box-tool, .btn-box-tool:hover { - color: #606c84; + color: #606c84; } + .btn-box-tool.btn:active { - box-shadow: none; + box-shadow: none; } + .box-body { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; - padding: 10px; + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; + padding: 10px; } + .no-header .box-body { - border-top-right-radius: 3px; - border-top-left-radius: 3px; + border-top-right-radius: 3px; + border-top-left-radius: 3px; } + .box-body > .table { - margin-bottom: 0; + margin-bottom: 0; } + .box-body .fc { - margin-top: 5px; + margin-top: 5px; } + .box-body .full-width-chart { - margin: -19px; + margin: -19px; } + .box-body.no-padding .full-width-chart { - margin: -9px; + margin: -9px; } + .box-body .box-pane { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 3px; + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 3px; } + .box-body .box-pane-right { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 0; } + .box-footer { - border-top-left-radius: 0; - border-top-right-radius: 0; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; - border-top: 1px solid #f4f4f4; - padding: 10px; - background-color: #ffffff; + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; + border-top: 1px solid #f4f4f4; + padding: 10px; + background-color: #ffffff; } + .chart-legend { - margin: 10px 0; + margin: 10px 0; } + @media (max-width: 991px) { - .chart-legend > li { - float: left; - margin-right: 10px; - } + .chart-legend > li { + float: left; + margin-right: 10px; + } } + .box-comments { - background: #f7f7f7; + background: #f7f7f7; } + .box-comments .box-comment { - padding: 8px 0; - border-bottom: 1px solid #eee; + padding: 8px 0; + border-bottom: 1px solid #eee; } + .box-comments .box-comment:before, .box-comments .box-comment:after { - content: " "; - display: table; + content: " "; + display: table; } + .box-comments .box-comment:after { - clear: both; + clear: both; } + .box-comments .box-comment:last-of-type { - border-bottom: 0; + border-bottom: 0; } + .box-comments .box-comment:first-of-type { - padding-top: 0; + padding-top: 0; } + .box-comments .box-comment img { - float: left; + float: left; } + .box-comments .comment-text { - margin-left: 40px; - color: #555; + margin-left: 40px; + color: #555; } + .box-comments .username { - color: #444; - display: block; - font-weight: 600; + color: #444; + display: block; + font-weight: 600; } + .box-comments .text-muted { - font-weight: 400; - font-size: 12px; + font-weight: 400; + font-size: 12px; } + /* Widget: TODO LIST */ .todo-list { - margin: 0; - padding: 0; - list-style: none; - overflow: auto; + margin: 0; + padding: 0; + list-style: none; + overflow: auto; } + .todo-list > li { - border-radius: 2px; - padding: 10px; - background: #f4f4f4; - margin-bottom: 2px; - border-left: 2px solid #e6e7e8; - color: #444; + border-radius: 2px; + padding: 10px; + background: #f4f4f4; + margin-bottom: 2px; + border-left: 2px solid #e6e7e8; + color: #444; } + .todo-list > li:last-of-type { - margin-bottom: 0; + margin-bottom: 0; } + .todo-list > li > input[type='checkbox'] { - margin: 0 10px 0 5px; + margin: 0 10px 0 5px; } + .todo-list > li .text { - display: inline-block; - margin-left: 5px; - font-weight: 600; + display: inline-block; + margin-left: 5px; + font-weight: 600; } + .todo-list > li .label { - margin-left: 10px; - font-size: 9px; + margin-left: 10px; + font-size: 9px; } + .todo-list > li .tools { - display: none; - float: right; - color: #dd4b39; + display: none; + float: right; + color: #dd4b39; } + .todo-list > li .tools > .fa, .todo-list > li .tools > .glyphicon, .todo-list > li .tools > .ion { - margin-right: 5px; - cursor: pointer; + margin-right: 5px; + cursor: pointer; } + .todo-list > li:hover .tools { - display: inline-block; + display: inline-block; } + .todo-list > li.done { - color: #999; + color: #999; } + .todo-list > li.done .text { - text-decoration: line-through; - font-weight: 500; + text-decoration: line-through; + font-weight: 500; } + .todo-list > li.done .label { - background: #d2d6de !important; + background: #d2d6de !important; } + .todo-list .danger { - border-left-color: #dd4b39; + border-left-color: #dd4b39; } + .todo-list .warning { - border-left-color: #f39c12; + border-left-color: #f39c12; } + .todo-list .info { - border-left-color: #00c0ef; + border-left-color: #00c0ef; } + .todo-list .success { - border-left-color: #00a65a; + border-left-color: #00a65a; } + .todo-list .primary { - border-left-color: #3c8dbc; + border-left-color: #3c8dbc; } + .todo-list .handle { - display: inline-block; - cursor: move; - margin: 0 5px; + display: inline-block; + cursor: move; + margin: 0 5px; } + /* Chat widget (DEPRECATED - this will be removed in the next major release. Use Direct Chat instead)*/ .chat { - padding: 5px 20px 5px 10px; + padding: 5px 20px 5px 10px; } + .chat .item { - margin-bottom: 10px; + margin-bottom: 10px; } + .chat .item:before, .chat .item:after { - content: " "; - display: table; + content: " "; + display: table; } + .chat .item:after { - clear: both; + clear: both; } + .chat .item > img { - width: 40px; - height: 40px; - border: 2px solid transparent; - border-radius: 50%; + width: 40px; + height: 40px; + border: 2px solid transparent; + border-radius: 50%; } + .chat .item > .online { - border: 2px solid #00a65a; + border: 2px solid #00a65a; } + .chat .item > .offline { - border: 2px solid #dd4b39; + border: 2px solid #dd4b39; } + .chat .item > .message { - margin-left: 55px; - margin-top: -40px; + margin-left: 55px; + margin-top: -40px; } + .chat .item > .message > .name { - display: block; - font-weight: 600; + display: block; + font-weight: 600; } + .chat .item > .attachment { - border-radius: 3px; - background: #f4f4f4; - margin-left: 65px; - margin-right: 15px; - padding: 10px; + border-radius: 3px; + background: #f4f4f4; + margin-left: 65px; + margin-right: 15px; + padding: 10px; } + .chat .item > .attachment > h4 { - margin: 0 0 5px 0; - font-weight: 600; - font-size: 14px; + margin: 0 0 5px 0; + font-weight: 600; + font-size: 14px; } + .chat .item > .attachment > p, .chat .item > .attachment > .filename { - font-weight: 600; - font-size: 13px; - font-style: italic; - margin: 0; + font-weight: 600; + font-size: 13px; + font-style: italic; + margin: 0; } + .chat .item > .attachment:before, .chat .item > .attachment:after { - content: " "; - display: table; + content: " "; + display: table; } + .chat .item > .attachment:after { - clear: both; + clear: both; } + .box-input { - max-width: 200px; + max-width: 200px; } + .modal .panel-body { - color: #444; + color: #444; } + /* * Component: Info Box * ------------------- */ .info-box { - display: block; - min-height: 90px; - background: #fff; - width: 100%; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - border-radius: 2px; - margin-bottom: 15px; + display: block; + min-height: 90px; + background: #fff; + width: 100%; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 2px; + margin-bottom: 15px; } + .info-box small { - font-size: 14px; + font-size: 14px; } + .info-box .progress { - background: rgba(0, 0, 0, 0.2); - margin: 5px -10px 5px -10px; - height: 2px; + background: rgba(0, 0, 0, 0.2); + margin: 5px -10px 5px -10px; + height: 2px; } + .info-box .progress, .info-box .progress .progress-bar { - border-radius: 0; + border-radius: 0; } + .info-box .progress .progress-bar { - background: #fff; + background: #fff; } + .info-box-icon { - border-top-left-radius: 2px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 2px; - display: block; - float: left; - height: 90px; - width: 90px; - text-align: center; - font-size: 45px; - line-height: 90px; - background: rgba(0, 0, 0, 0.2); + border-top-left-radius: 2px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 2px; + display: block; + float: left; + height: 90px; + width: 90px; + text-align: center; + font-size: 45px; + line-height: 90px; + background: rgba(0, 0, 0, 0.2); } + .info-box-icon > img { - max-width: 100%; + max-width: 100%; } + .info-box-content { - padding: 5px 10px; - margin-left: 90px; + padding: 5px 10px; + margin-left: 90px; } + .info-box-number { - display: block; - font-weight: bold; - font-size: 18px; + display: block; + font-weight: bold; + font-size: 18px; } + .progress-description, .info-box-text { - display: block; - font-size: 14px; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; + display: block; + font-size: 14px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; } + .info-box-text { - text-transform: uppercase; + text-transform: uppercase; } + .info-box-more { - display: block; + display: block; } + .progress-description { - margin: 0; + margin: 0; } + /* * Component: Timeline * ------------------- */ .timeline { - position: relative; - margin: 0 0 30px 0; - padding: 0; - list-style: none; + position: relative; + margin: 0 0 30px 0; + padding: 0; + list-style: none; } + .timeline:before { - content: ''; - position: absolute; - top: 0; - bottom: 0; - width: 4px; - background: #ddd; - left: 31px; - margin: 0; - border-radius: 2px; + content: ''; + position: absolute; + top: 0; + bottom: 0; + width: 4px; + background: #ddd; + left: 31px; + margin: 0; + border-radius: 2px; } + .timeline > li { - position: relative; - margin-right: 10px; - margin-bottom: 15px; + position: relative; + margin-right: 10px; + margin-bottom: 15px; } + .timeline > li:before, .timeline > li:after { - content: " "; - display: table; + content: " "; + display: table; } + .timeline > li:after { - clear: both; + clear: both; } + .timeline > li > .timeline-item { - -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - border-radius: 3px; - margin-top: 0; - background: #fff; - color: #444; - margin-left: 60px; - margin-right: 15px; - padding: 0; - position: relative; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 3px; + margin-top: 0; + background: #fff; + color: #444; + margin-left: 60px; + margin-right: 15px; + padding: 0; + position: relative; } + .timeline > li > .timeline-item > .time { - color: #999; - float: right; - padding: 10px; - font-size: 12px; + color: #999; + float: right; + padding: 10px; + font-size: 12px; } + .timeline > li > .timeline-item > .timeline-header { - margin: 0; - color: #555; - border-bottom: 1px solid #f4f4f4; - padding: 10px; - font-size: 16px; - line-height: 1.1; + margin: 0; + color: #555; + border-bottom: 1px solid #f4f4f4; + padding: 10px; + font-size: 16px; + line-height: 1.1; } + .timeline > li > .timeline-item > .timeline-header > a { - font-weight: 600; + font-weight: 600; } + .timeline > li > .timeline-item > .timeline-body, .timeline > li > .timeline-item > .timeline-footer { - padding: 10px; + padding: 10px; } + .timeline > li > .fa, .timeline > li > .glyphicon, .timeline > li > .ion { - width: 30px; - height: 30px; - font-size: 15px; - line-height: 30px; - position: absolute; - color: #666; - background: #d2d6de; - border-radius: 50%; - text-align: center; - left: 18px; - top: 0; + width: 30px; + height: 30px; + font-size: 15px; + line-height: 30px; + position: absolute; + color: #666; + background: #d2d6de; + border-radius: 50%; + text-align: center; + left: 18px; + top: 0; } + .timeline > .time-label > span { - font-weight: 600; - padding: 5px; - display: inline-block; - background-color: #fff; - border-radius: 4px; + font-weight: 600; + padding: 5px; + display: inline-block; + background-color: #fff; + border-radius: 4px; } + .timeline-inverse > li > .timeline-item { - background: #f0f0f0; - border: 1px solid #ddd; - -webkit-box-shadow: none; - box-shadow: none; + background: #f0f0f0; + border: 1px solid #ddd; + -webkit-box-shadow: none; + box-shadow: none; } + .timeline-inverse > li > .timeline-item > .timeline-header { - border-bottom-color: #ddd; + border-bottom-color: #ddd; } + /* * Component: Button * ----------------- */ .btn { - border-radius: 3px; - -webkit-box-shadow: none; - box-shadow: none; - border: 1px solid transparent; + border-radius: 3px; + -webkit-box-shadow: none; + box-shadow: none; + border: 1px solid transparent; } + .btn.uppercase { - text-transform: uppercase; + text-transform: uppercase; } + .btn.btn-flat { - border-radius: 0; - -webkit-box-shadow: none; - -moz-box-shadow: none; - box-shadow: none; - border-width: 1px; + border-radius: 0; + -webkit-box-shadow: none; + -moz-box-shadow: none; + box-shadow: none; + border-width: 1px; } + .btn:active { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); } + .btn:focus { - outline: none; + outline: none; } + .btn.btn-file { - position: relative; - overflow: hidden; + position: relative; + overflow: hidden; } + .btn.btn-file > input[type='file'] { - position: absolute; - top: 0; - right: 0; - min-width: 100%; - min-height: 100%; - font-size: 100px; - text-align: right; - opacity: 0; - filter: alpha(opacity=0); - outline: none; - background: white; - cursor: inherit; - display: block; + position: absolute; + top: 0; + right: 0; + min-width: 100%; + min-height: 100%; + font-size: 100px; + text-align: right; + opacity: 0; + filter: alpha(opacity=0); + outline: none; + background: white; + cursor: inherit; + display: block; } + .btn-default { - background-color: #f4f4f4; - color: #444; - border-color: #ddd; + background-color: #f4f4f4; + color: #444; + border-color: #ddd; } + .btn-default:hover, .btn-default:active, .btn-default.hover { - background-color: #e7e7e7; + background-color: #e7e7e7; } + .btn-primary { - background-color: #3c8dbc; - border-color: #367fa9; + background-color: #3c8dbc; + border-color: #367fa9; } + .btn-primary:hover, .btn-primary:active, .btn-primary.hover { - background-color: #367fa9; + background-color: #367fa9; } + .btn-success { - background-color: #00a65a; - border-color: #008d4c; + background-color: #00a65a; + border-color: #008d4c; } + .btn-success:hover, .btn-success:active, .btn-success.hover { - background-color: #008d4c; + background-color: #008d4c; } + .btn-info { - background-color: #00c0ef; - border-color: #00acd6; + background-color: #00c0ef; + border-color: #00acd6; } + .btn-info:hover, .btn-info:active, .btn-info.hover { - background-color: #00acd6; + background-color: #00acd6; } + .btn-danger { - background-color: #dd4b39; - border-color: #d73925; + background-color: #dd4b39; + border-color: #d73925; } + .btn-danger:hover, .btn-danger:active, .btn-danger.hover { - background-color: #d73925; + background-color: #d73925; } + .btn-warning { - background-color: #f39c12; - border-color: #e08e0b; + background-color: #f39c12; + border-color: #e08e0b; } + .btn-warning:hover, .btn-warning:active, .btn-warning.hover { - background-color: #e08e0b; + background-color: #e08e0b; } + .btn-outline { - border: 1px solid #fff; - background: transparent; - color: #fff; + border: 1px solid #fff; + background: transparent; + color: #fff; } + .btn-outline:hover, .btn-outline:focus, .btn-outline:active { - color: rgba(255, 255, 255, 0.7); - border-color: rgba(255, 255, 255, 0.7); + color: rgba(255, 255, 255, 0.7); + border-color: rgba(255, 255, 255, 0.7); } + .btn-link { - -webkit-box-shadow: none; - box-shadow: none; + -webkit-box-shadow: none; + box-shadow: none; } + .btn[class*='bg-']:hover { - -webkit-box-shadow: inset 0 0 100px rgba(0, 0, 0, 0.2); - box-shadow: inset 0 0 100px rgba(0, 0, 0, 0.2); + -webkit-box-shadow: inset 0 0 100px rgba(0, 0, 0, 0.2); + box-shadow: inset 0 0 100px rgba(0, 0, 0, 0.2); } + .btn-app { - border-radius: 3px; - position: relative; - padding: 15px 5px; - margin: 0 0 10px 10px; - min-width: 80px; - height: 60px; - text-align: center; - color: #666; - border: 1px solid #ddd; - background-color: #f4f4f4; - font-size: 12px; + border-radius: 3px; + position: relative; + padding: 15px 5px; + margin: 0 0 10px 10px; + min-width: 80px; + height: 60px; + text-align: center; + color: #666; + border: 1px solid #ddd; + background-color: #f4f4f4; + font-size: 12px; } + .btn-app > .fa, .btn-app > .glyphicon, .btn-app > .ion { - font-size: 20px; - display: block; + font-size: 20px; + display: block; } + .btn-app:hover { - background: #f4f4f4; - color: #444; - border-color: #aaa; + background: #f4f4f4; + color: #444; + border-color: #aaa; } + .btn-app:active, .btn-app:focus { - -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); - box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + -moz-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); } + .btn-app > .badge { - position: absolute; - top: -3px; - right: -10px; - font-size: 10px; - font-weight: 400; + position: absolute; + top: -3px; + right: -10px; + font-size: 10px; + font-weight: 400; } + /* * Component: Callout * ------------------ */ .callout { - border-radius: 3px; - margin: 0 0 20px 0; - padding: 15px 30px 15px 15px; - border-left: 5px solid #eee; + border-radius: 3px; + margin: 0 0 20px 0; + padding: 15px 30px 15px 15px; + border-left: 5px solid #eee; } + .callout a { - color: #fff; - text-decoration: underline; + color: #fff; + text-decoration: underline; } + .callout a:hover { - color: #eee; + color: #eee; } + .callout h4 { - margin-top: 0; - font-weight: 600; + margin-top: 0; + font-weight: 600; } + .callout p:last-child { - margin-bottom: 0; + margin-bottom: 0; } + .callout code, .callout .highlight { - background-color: #fff; + background-color: #fff; } + .callout.callout-danger { - border-color: #c23321; + border-color: #c23321; } + .callout.callout-warning { - border-color: #c87f0a; + border-color: #c87f0a; } + .callout.callout-info { - border-color: #0097bc; + border-color: #0097bc; } + .callout.callout-success { - border-color: #00733e; + border-color: #00733e; } + /* * Component: alert * ---------------- */ .alert { - border-radius: 3px; + border-radius: 3px; } + .alert h4 { - font-weight: 600; + font-weight: 600; } + .alert .icon { - margin-right: 10px; + margin-right: 10px; } + .alert .close { - color: #000; - opacity: 0.2; - filter: alpha(opacity=20); + color: #000; + opacity: 0.2; + filter: alpha(opacity=20); } + .alert .close:hover { - opacity: 0.5; - filter: alpha(opacity=50); + opacity: 0.5; + filter: alpha(opacity=50); } + .alert a { - color: #fff; - text-decoration: underline; + color: #fff; + text-decoration: underline; } + .alert-success { - border-color: #008d4c; + border-color: #008d4c; } + .alert-danger, .alert-error { - border-color: #d73925; + border-color: #d73925; } + .alert-warning { - border-color: #e08e0b; + border-color: #e08e0b; } + .alert-info { - border-color: #00acd6; + border-color: #00acd6; } + /* * Component: Nav * -------------- @@ -2428,223 +2897,272 @@ a:focus { .nav > li > a:hover, .nav > li > a:active, .nav > li > a:focus { - color: #444; - background: #f7f7f7; + color: #444; + background: #f7f7f7; } + /* NAV PILLS */ .nav-pills > li > a { - border-radius: 0; - border-top: 3px solid transparent; - color: #444; + border-radius: 0; + border-top: 3px solid transparent; + color: #444; } + .nav-pills > li > a > .fa, .nav-pills > li > a > .glyphicon, .nav-pills > li > a > .ion { - margin-right: 5px; + margin-right: 5px; } + .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus { - border-top-color: #3c8dbc; + border-top-color: #3c8dbc; } + .nav-pills > li.active > a { - font-weight: 600; + font-weight: 600; } + /* NAV STACKED */ .nav-stacked > li > a { - border-radius: 0; - border-top: 0; - border-left: 3px solid transparent; - color: #444; + border-radius: 0; + border-top: 0; + border-left: 3px solid transparent; + color: #444; } + .nav-stacked > li.active > a, .nav-stacked > li.active > a:hover { - background: transparent; - color: #444; - border-top: 0; - border-left-color: #3c8dbc; + background: transparent; + color: #444; + border-top: 0; + border-left-color: #3c8dbc; } + .nav-stacked > li.header { - border-bottom: 1px solid #ddd; - color: #777; - margin-bottom: 10px; - padding: 5px 10px; - text-transform: uppercase; + border-bottom: 1px solid #ddd; + color: #777; + margin-bottom: 10px; + padding: 5px 10px; + text-transform: uppercase; } + /* NAV TABS */ .nav-tabs-custom { - margin-bottom: 20px; - background: #fff; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - border-radius: 3px; + margin-bottom: 20px; + background: #fff; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 3px; } + .nav-tabs-custom > .nav-tabs { - margin: 0; - border-bottom-color: #f4f4f4; - border-top-right-radius: 3px; - border-top-left-radius: 3px; + margin: 0; + border-bottom-color: #f4f4f4; + border-top-right-radius: 3px; + border-top-left-radius: 3px; } + .nav-tabs-custom > .nav-tabs > li { - border-top: 3px solid transparent; - margin-bottom: -2px; - margin-right: 5px; + border-top: 3px solid transparent; + margin-bottom: -2px; + margin-right: 5px; } + .nav-tabs-custom > .nav-tabs > li > a { - color: #444; - border-radius: 0; + color: #444; + border-radius: 0; } + .nav-tabs-custom > .nav-tabs > li > a.text-muted { - color: #999; + color: #999; } + .nav-tabs-custom > .nav-tabs > li > a, .nav-tabs-custom > .nav-tabs > li > a:hover { - background: transparent; - margin: 0; + background: transparent; + margin: 0; } + .nav-tabs-custom > .nav-tabs > li > a:hover { - color: #999; + color: #999; } + .nav-tabs-custom > .nav-tabs > li:not(.active) > a:hover, .nav-tabs-custom > .nav-tabs > li:not(.active) > a:focus, .nav-tabs-custom > .nav-tabs > li:not(.active) > a:active { - border-color: transparent; + border-color: transparent; } + .nav-tabs-custom > .nav-tabs > li.active { - border-top-color: #3c8dbc; + border-top-color: #3c8dbc; } + .nav-tabs-custom > .nav-tabs > li.active > a, .nav-tabs-custom > .nav-tabs > li.active:hover > a { - background-color: #fff; - color: #444; + background-color: #fff; + color: #444; } + .nav-tabs-custom > .nav-tabs > li.active > a { - border-top-color: transparent; - border-left-color: #f4f4f4; - border-right-color: #f4f4f4; + border-top-color: transparent; + border-left-color: #f4f4f4; + border-right-color: #f4f4f4; } + .nav-tabs-custom > .nav-tabs > li:first-of-type { - margin-left: 0; + margin-left: 0; } + .nav-tabs-custom > .nav-tabs > li:first-of-type.active > a { - border-left-color: transparent; + border-left-color: transparent; } + .nav-tabs-custom > .nav-tabs.pull-right { - float: none !important; + float: none !important; } + .nav-tabs-custom > .nav-tabs.pull-right > li { - float: right; + float: right; } + .nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type { - margin-right: 0; + margin-right: 0; } + .nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type > a { - border-left-width: 1px; + border-left-width: 1px; } + .nav-tabs-custom > .nav-tabs.pull-right > li:first-of-type.active > a { - border-left-color: #f4f4f4; - border-right-color: transparent; + border-left-color: #f4f4f4; + border-right-color: transparent; } + .nav-tabs-custom > .nav-tabs > li.header { - line-height: 35px; - padding: 0 10px; - font-size: 20px; - color: #444; + line-height: 35px; + padding: 0 10px; + font-size: 20px; + color: #444; } + .nav-tabs-custom > .nav-tabs > li.header > .fa, .nav-tabs-custom > .nav-tabs > li.header > .glyphicon, .nav-tabs-custom > .nav-tabs > li.header > .ion { - margin-right: 5px; + margin-right: 5px; } + .nav-tabs-custom > .tab-content { - background: #fff; - padding: 10px; - border-bottom-right-radius: 3px; - border-bottom-left-radius: 3px; + background: #fff; + padding: 10px; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; } + .nav-tabs-custom .dropdown.open > a:active, .nav-tabs-custom .dropdown.open > a:focus { - background: transparent; - color: #999; + background: transparent; + color: #999; } + .nav-tabs-custom.tab-primary > .nav-tabs > li.active { - border-top-color: #3c8dbc; + border-top-color: #3c8dbc; } + .nav-tabs-custom.tab-info > .nav-tabs > li.active { - border-top-color: #00c0ef; + border-top-color: #00c0ef; } + .nav-tabs-custom.tab-danger > .nav-tabs > li.active { - border-top-color: #dd4b39; + border-top-color: #dd4b39; } + .nav-tabs-custom.tab-warning > .nav-tabs > li.active { - border-top-color: #f39c12; + border-top-color: #f39c12; } + .nav-tabs-custom.tab-success > .nav-tabs > li.active { - border-top-color: #00a65a; + border-top-color: #00a65a; } + .nav-tabs-custom.tab-default > .nav-tabs > li.active { - border-top-color: #d2d6de; + border-top-color: #d2d6de; } + /* PAGINATION */ .pagination > li > a { - background: #fafafa; - color: #666; + background: #fafafa; + color: #666; } + .pagination.pagination-flat > li > a { - border-radius: 0 !important; + border-radius: 0 !important; } + /* * Component: Products List * ------------------------ */ .products-list { - list-style: none; - margin: 0; - padding: 0; + list-style: none; + margin: 0; + padding: 0; } + .products-list > .item { - border-radius: 3px; - -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - padding: 10px 0; - background: #fff; + border-radius: 3px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + padding: 10px 0; + background: #fff; } + .products-list > .item:before, .products-list > .item:after { - content: " "; - display: table; + content: " "; + display: table; } + .products-list > .item:after { - clear: both; + clear: both; } + .products-list .product-img { - float: left; + float: left; } + .products-list .product-img img { - width: 50px; - height: 50px; + width: 50px; + height: 50px; } + .products-list .product-info { - margin-left: 60px; + margin-left: 60px; } + .products-list .product-title { - font-weight: 600; + font-weight: 600; } + .products-list .product-description { - display: block; - color: #999; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; + display: block; + color: #999; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; } + .product-list-in-box > .item { - -webkit-box-shadow: none; - box-shadow: none; - border-radius: 0; - border-bottom: 1px solid #f4f4f4; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 0; + border-bottom: 1px solid #f4f4f4; } + .product-list-in-box > .item:last-of-type { - border-bottom-width: 0; + border-bottom-width: 0; } + /* * Component: Table * ---------------- @@ -2655,695 +3173,830 @@ a:focus { .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td { - border-top: 1px solid #f4f4f4; + border-top: 1px solid #f4f4f4; } + .table > thead > tr > th { - border-bottom: 2px solid #f4f4f4; + border-bottom: 2px solid #f4f4f4; } + .table tr td .progress { - margin-top: 5px; + margin-top: 5px; } + .table-bordered { - border: 1px solid #f4f4f4; + border: 1px solid #f4f4f4; } + .table-bordered > thead > tr > th, .table-bordered > tbody > tr > th, .table-bordered > tfoot > tr > th, .table-bordered > thead > tr > td, .table-bordered > tbody > tr > td, .table-bordered > tfoot > tr > td { - border: 1px solid #f4f4f4; + border: 1px solid #f4f4f4; } + .table-bordered > thead > tr > th, .table-bordered > thead > tr > td { - border-bottom-width: 2px; + border-bottom-width: 2px; } + .table.no-border, .table.no-border td, .table.no-border th { - border: 0; + border: 0; } + /* .text-center in tables */ table.text-center, table.text-center td, table.text-center th { - text-align: center; + text-align: center; } + .table.align th { - text-align: left; + text-align: left; } + .table.align td { - text-align: right; + text-align: right; } + /* * Component: Label * ---------------- */ .label-default { - background-color: #d2d6de; - color: #444; + background-color: #d2d6de; + color: #444; } + /* * Component: Direct Chat * ---------------------- */ .direct-chat .box-body { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; - position: relative; - overflow-x: hidden; - padding: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + position: relative; + overflow-x: hidden; + padding: 0; } + .direct-chat.chat-pane-open .direct-chat-contacts { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); } + .direct-chat-messages { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); - padding: 10px; - height: 250px; - overflow: auto; + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); + padding: 10px; + height: 250px; + overflow: auto; } + .direct-chat-msg, .direct-chat-text { - display: block; + display: block; } + .direct-chat-msg { - margin-bottom: 10px; + margin-bottom: 10px; } + .direct-chat-msg:before, .direct-chat-msg:after { - content: " "; - display: table; + content: " "; + display: table; } + .direct-chat-msg:after { - clear: both; + clear: both; } + .direct-chat-messages, .direct-chat-contacts { - -webkit-transition: -webkit-transform 0.5s ease-in-out; - -moz-transition: -moz-transform 0.5s ease-in-out; - -o-transition: -o-transform 0.5s ease-in-out; - transition: transform 0.5s ease-in-out; + -webkit-transition: -webkit-transform 0.5s ease-in-out; + -moz-transition: -moz-transform 0.5s ease-in-out; + -o-transition: -o-transform 0.5s ease-in-out; + transition: transform 0.5s ease-in-out; } + .direct-chat-text { - border-radius: 5px; - position: relative; - padding: 5px 10px; - background: #d2d6de; - border: 1px solid #d2d6de; - margin: 5px 0 0 50px; - color: #444444; + border-radius: 5px; + position: relative; + padding: 5px 10px; + background: #d2d6de; + border: 1px solid #d2d6de; + margin: 5px 0 0 50px; + color: #444444; } + .direct-chat-text:after, .direct-chat-text:before { - position: absolute; - right: 100%; - top: 15px; - border: solid transparent; - border-right-color: #d2d6de; - content: ' '; - height: 0; - width: 0; - pointer-events: none; + position: absolute; + right: 100%; + top: 15px; + border: solid transparent; + border-right-color: #d2d6de; + content: ' '; + height: 0; + width: 0; + pointer-events: none; } + .direct-chat-text:after { - border-width: 5px; - margin-top: -5px; + border-width: 5px; + margin-top: -5px; } + .direct-chat-text:before { - border-width: 6px; - margin-top: -6px; + border-width: 6px; + margin-top: -6px; } + .right .direct-chat-text { - margin-right: 50px; - margin-left: 0; + margin-right: 50px; + margin-left: 0; } + .right .direct-chat-text:after, .right .direct-chat-text:before { - right: auto; - left: 100%; - border-right-color: transparent; - border-left-color: #d2d6de; + right: auto; + left: 100%; + border-right-color: transparent; + border-left-color: #d2d6de; } + .direct-chat-img { - border-radius: 50%; - float: left; - width: 40px; - height: 40px; + border-radius: 50%; + float: left; + width: 40px; + height: 40px; } + .right .direct-chat-img { - float: right; + float: right; } + .direct-chat-info { - display: block; - margin-bottom: 2px; - font-size: 12px; + display: block; + margin-bottom: 2px; + font-size: 12px; } + .direct-chat-name { - font-weight: 600; + font-weight: 600; } + .direct-chat-timestamp { - color: #999; + color: #999; } + .direct-chat-contacts-open .direct-chat-contacts { - -webkit-transform: translate(0, 0); - -ms-transform: translate(0, 0); - -o-transform: translate(0, 0); - transform: translate(0, 0); + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); } + .direct-chat-contacts { - -webkit-transform: translate(101%, 0); - -ms-transform: translate(101%, 0); - -o-transform: translate(101%, 0); - transform: translate(101%, 0); - position: absolute; - top: 0; - bottom: 0; - height: 250px; - width: 100%; - background: #222d32; - color: #fff; - overflow: auto; + -webkit-transform: translate(101%, 0); + -ms-transform: translate(101%, 0); + -o-transform: translate(101%, 0); + transform: translate(101%, 0); + position: absolute; + top: 0; + bottom: 0; + height: 250px; + width: 100%; + background: #222d32; + color: #fff; + overflow: auto; } + .contacts-list > li { - border-bottom: 1px solid rgba(0, 0, 0, 0.2); - padding: 10px; - margin: 0; + border-bottom: 1px solid rgba(0, 0, 0, 0.2); + padding: 10px; + margin: 0; } + .contacts-list > li:before, .contacts-list > li:after { - content: " "; - display: table; + content: " "; + display: table; } + .contacts-list > li:after { - clear: both; + clear: both; } + .contacts-list > li:last-of-type { - border-bottom: none; + border-bottom: none; } + .contacts-list-img { - border-radius: 50%; - width: 40px; - float: left; + border-radius: 50%; + width: 40px; + float: left; } + .contacts-list-info { - margin-left: 45px; - color: #fff; + margin-left: 45px; + color: #fff; } + .contacts-list-name, .contacts-list-status { - display: block; + display: block; } + .contacts-list-name { - font-weight: 600; + font-weight: 600; } + .contacts-list-status { - font-size: 12px; + font-size: 12px; } + .contacts-list-date { - color: #aaa; - font-weight: normal; + color: #aaa; + font-weight: normal; } + .contacts-list-msg { - color: #999; + color: #999; } + .direct-chat-danger .right > .direct-chat-text { - background: #dd4b39; - border-color: #dd4b39; - color: #ffffff; + background: #dd4b39; + border-color: #dd4b39; + color: #ffffff; } + .direct-chat-danger .right > .direct-chat-text:after, .direct-chat-danger .right > .direct-chat-text:before { - border-left-color: #dd4b39; + border-left-color: #dd4b39; } + .direct-chat-primary .right > .direct-chat-text { - background: #3c8dbc; - border-color: #3c8dbc; - color: #ffffff; + background: #3c8dbc; + border-color: #3c8dbc; + color: #ffffff; } + .direct-chat-primary .right > .direct-chat-text:after, .direct-chat-primary .right > .direct-chat-text:before { - border-left-color: #3c8dbc; + border-left-color: #3c8dbc; } + .direct-chat-warning .right > .direct-chat-text { - background: #f39c12; - border-color: #f39c12; - color: #ffffff; + background: #f39c12; + border-color: #f39c12; + color: #ffffff; } + .direct-chat-warning .right > .direct-chat-text:after, .direct-chat-warning .right > .direct-chat-text:before { - border-left-color: #f39c12; + border-left-color: #f39c12; } + .direct-chat-info .right > .direct-chat-text { - background: #00c0ef; - border-color: #00c0ef; - color: #ffffff; + background: #00c0ef; + border-color: #00c0ef; + color: #ffffff; } + .direct-chat-info .right > .direct-chat-text:after, .direct-chat-info .right > .direct-chat-text:before { - border-left-color: #00c0ef; + border-left-color: #00c0ef; } + .direct-chat-success .right > .direct-chat-text { - background: #00a65a; - border-color: #00a65a; - color: #ffffff; + background: #00a65a; + border-color: #00a65a; + color: #ffffff; } + .direct-chat-success .right > .direct-chat-text:after, .direct-chat-success .right > .direct-chat-text:before { - border-left-color: #00a65a; + border-left-color: #00a65a; } + /* * Component: Users List * --------------------- */ .users-list > li { - width: 25%; - float: left; - padding: 10px; - text-align: center; + width: 25%; + float: left; + padding: 10px; + text-align: center; } + .users-list > li img { - border-radius: 50%; - max-width: 100%; - height: auto; + border-radius: 50%; + max-width: 100%; + height: auto; } + .users-list > li > a:hover, .users-list > li > a:hover .users-list-name { - color: #999; + color: #999; } + .users-list-name, .users-list-date { - display: block; + display: block; } + .users-list-name { - font-weight: 600; - color: #444; - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; + font-weight: 600; + color: #444; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; } + .users-list-date { - color: #999; - font-size: 12px; + color: #999; + font-size: 12px; } + /* * Component: Carousel * ------------------- */ .carousel-control.left, .carousel-control.right { - background-image: none; + background-image: none; } + .carousel-control > .fa { - font-size: 40px; - position: absolute; - top: 50%; - z-index: 5; - display: inline-block; - margin-top: -20px; + font-size: 40px; + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -20px; } + /* * Component: modal * ---------------- */ .modal { - background: rgba(0, 0, 0, 0.3); + background: rgba(0, 0, 0, 0.3); } + .modal-content { - border-radius: 0; - -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); - box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); - border: 0; -} -@media (min-width: 768px) { - .modal-content { + border-radius: 0; -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); - } + border: 0; } + +@media (min-width: 768px) { + .modal-content { + -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); + box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125); + } +} + .modal-header { - border-bottom-color: #f4f4f4; + border-bottom-color: #f4f4f4; } + .modal-footer { - border-top-color: #f4f4f4; + border-top-color: #f4f4f4; } + .modal-primary .modal-header, .modal-primary .modal-footer { - border-color: #307095; + border-color: #307095; } + .modal-warning .modal-header, .modal-warning .modal-footer { - border-color: #c87f0a; + border-color: #c87f0a; } + .modal-info .modal-header, .modal-info .modal-footer { - border-color: #0097bc; + border-color: #0097bc; } + .modal-success .modal-header, .modal-success .modal-footer { - border-color: #00733e; + border-color: #00733e; } + .modal-danger .modal-header, .modal-danger .modal-footer { - border-color: #c23321; + border-color: #c23321; } + /* * Component: Social Widgets * ------------------------- */ .box-widget { - border: none; - position: relative; + border: none; + position: relative; } + .widget-user .widget-user-header { - padding: 20px; - height: 120px; - border-top-right-radius: 3px; - border-top-left-radius: 3px; + padding: 20px; + height: 120px; + border-top-right-radius: 3px; + border-top-left-radius: 3px; } + .widget-user .widget-user-username { - margin-top: 0; - margin-bottom: 5px; - font-size: 25px; - font-weight: 300; - text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); + margin-top: 0; + margin-bottom: 5px; + font-size: 25px; + font-weight: 300; + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2); } + .widget-user .widget-user-desc { - margin-top: 0; + margin-top: 0; } + .widget-user .widget-user-image { - position: absolute; - top: 65px; - left: 50%; - margin-left: -45px; + position: absolute; + top: 65px; + left: 50%; + margin-left: -45px; } + .widget-user .widget-user-image > img { - width: 90px; - height: auto; - border: 3px solid #fff; + width: 90px; + height: auto; + border: 3px solid #fff; } + .widget-user .box-footer { - padding-top: 30px; + padding-top: 30px; } + .widget-user-2 .widget-user-header { - padding: 20px; - border-top-right-radius: 3px; - border-top-left-radius: 3px; + padding: 20px; + border-top-right-radius: 3px; + border-top-left-radius: 3px; } + .widget-user-2 .widget-user-username { - margin-top: 5px; - margin-bottom: 5px; - font-size: 25px; - font-weight: 300; + margin-top: 5px; + margin-bottom: 5px; + font-size: 25px; + font-weight: 300; } + .widget-user-2 .widget-user-desc { - margin-top: 0; + margin-top: 0; } + .widget-user-2 .widget-user-username, .widget-user-2 .widget-user-desc { - margin-left: 75px; + margin-left: 75px; } + .widget-user-2 .widget-user-image > img { - width: 65px; - height: auto; - float: left; + width: 65px; + height: auto; + float: left; } + /* * Page: Mailbox * ------------- */ .mailbox-messages > .table { - margin: 0; + margin: 0; } + .mailbox-controls { - padding: 5px; + padding: 5px; } + .mailbox-controls.with-border { - border-bottom: 1px solid #f4f4f4; + border-bottom: 1px solid #f4f4f4; } + .mailbox-read-info { - border-bottom: 1px solid #f4f4f4; - padding: 10px; + border-bottom: 1px solid #f4f4f4; + padding: 10px; } + .mailbox-read-info h3 { - font-size: 20px; - margin: 0; + font-size: 20px; + margin: 0; } + .mailbox-read-info h5 { - margin: 0; - padding: 5px 0 0 0; + margin: 0; + padding: 5px 0 0 0; } + .mailbox-read-time { - color: #999; - font-size: 13px; + color: #999; + font-size: 13px; } + .mailbox-read-message { - padding: 10px; + padding: 10px; } + .mailbox-attachments li { - float: left; - width: 200px; - border: 1px solid #eee; - margin-bottom: 10px; - margin-right: 10px; + float: left; + width: 200px; + border: 1px solid #eee; + margin-bottom: 10px; + margin-right: 10px; } + .mailbox-attachment-name { - font-weight: bold; - color: #666; + font-weight: bold; + color: #666; } + .mailbox-attachment-icon, .mailbox-attachment-info, .mailbox-attachment-size { - display: block; + display: block; } + .mailbox-attachment-info { - padding: 10px; - background: #f4f4f4; + padding: 10px; + background: #f4f4f4; } + .mailbox-attachment-size { - color: #999; - font-size: 12px; + color: #999; + font-size: 12px; } + .mailbox-attachment-icon { - text-align: center; - font-size: 65px; - color: #666; - padding: 20px 10px; + text-align: center; + font-size: 65px; + color: #666; + padding: 20px 10px; } + .mailbox-attachment-icon.has-img { - padding: 0; + padding: 0; } + .mailbox-attachment-icon.has-img > img { - max-width: 100%; - height: auto; + max-width: 100%; + height: auto; } + /* * Page: Lock Screen * ----------------- */ /* ADD THIS CLASS TO THE TAG */ .lockscreen { - background: #d2d6de; + background: #d2d6de; } + .lockscreen-logo { - font-size: 35px; - text-align: center; - margin-bottom: 25px; - font-weight: 300; + font-size: 35px; + text-align: center; + margin-bottom: 25px; + font-weight: 300; } + .lockscreen-logo a { - color: #444; + color: #444; } + .lockscreen-wrapper { - max-width: 400px; - margin: 0 auto; - margin-top: 10%; + max-width: 400px; + margin: 0 auto; + margin-top: 10%; } + /* User name [optional] */ .lockscreen .lockscreen-name { - text-align: center; - font-weight: 600; + text-align: center; + font-weight: 600; } + /* Will contain the image and the sign in form */ .lockscreen-item { - border-radius: 4px; - padding: 0; - background: #fff; - position: relative; - margin: 10px auto 30px auto; - width: 290px; + border-radius: 4px; + padding: 0; + background: #fff; + position: relative; + margin: 10px auto 30px auto; + width: 290px; } + /* User image */ .lockscreen-image { - border-radius: 50%; - position: absolute; - left: -10px; - top: -25px; - background: #fff; - padding: 5px; - z-index: 10; + border-radius: 50%; + position: absolute; + left: -10px; + top: -25px; + background: #fff; + padding: 5px; + z-index: 10; } + .lockscreen-image > img { - border-radius: 50%; - width: 70px; - height: 70px; + border-radius: 50%; + width: 70px; + height: 70px; } + /* Contains the password input and the login button */ .lockscreen-credentials { - margin-left: 70px; + margin-left: 70px; } + .lockscreen-credentials .form-control { - border: 0; + border: 0; } + .lockscreen-credentials .btn { - background-color: #fff; - border: 0; - padding: 0 10px; + background-color: #fff; + border: 0; + padding: 0 10px; } + .lockscreen-footer { - margin-top: 10px; + margin-top: 10px; } + /* * Page: Login & Register * ---------------------- */ .login-logo, .register-logo { - font-size: 35px; - text-align: center; - margin-bottom: 25px; - font-weight: 300; + font-size: 35px; + text-align: center; + margin-bottom: 25px; + font-weight: 300; } + .login-logo a, .register-logo a { - color: #444; + color: #444; } + .login-page, .register-page { - background: #d2d6de; + background: #d2d6de; } + .login-box, .register-box { - width: 360px; - margin: 7% auto; + width: 360px; + margin: 7% auto; } + @media (max-width: 768px) { - .login-box, - .register-box { - width: 90%; - margin-top: 20px; - } + .login-box, + .register-box { + width: 90%; + margin-top: 20px; + } } + .login-box-body, .register-box-body { - background: #fff; - padding: 20px; - border-top: 0; - color: #666; + background: #fff; + padding: 20px; + border-top: 0; + color: #666; } + .login-box-body .form-control-feedback, .register-box-body .form-control-feedback { - color: #777; + color: #777; } + .login-box-msg, .register-box-msg { - margin: 0; - text-align: center; - padding: 0 20px 20px 20px; + margin: 0; + text-align: center; + padding: 0 20px 20px 20px; } + .social-auth-links { - margin: 10px 0; + margin: 10px 0; } + /* * Page: 400 and 500 error pages * ------------------------------ */ .error-page { - width: 600px; - margin: 20px auto 0 auto; + width: 600px; + margin: 20px auto 0 auto; } + @media (max-width: 991px) { - .error-page { - width: 100%; - } + .error-page { + width: 100%; + } } + .error-page > .headline { - float: left; - font-size: 100px; - font-weight: 300; + float: left; + font-size: 100px; + font-weight: 300; } + @media (max-width: 991px) { - .error-page > .headline { - float: none; - text-align: center; - } + .error-page > .headline { + float: none; + text-align: center; + } } + .error-page > .error-content { - margin-left: 190px; - display: block; + margin-left: 190px; + display: block; } + @media (max-width: 991px) { - .error-page > .error-content { - margin-left: 0; - } + .error-page > .error-content { + margin-left: 0; + } } + .error-page > .error-content > h3 { - font-weight: 300; - font-size: 25px; + font-weight: 300; + font-size: 25px; } + @media (max-width: 991px) { - .error-page > .error-content > h3 { - text-align: center; - } + .error-page > .error-content > h3 { + text-align: center; + } } + /* * Page: Invoice * ------------- */ .invoice { - position: relative; - background: #fff; - border: 1px solid #f4f4f4; - padding: 20px; - margin: 10px 25px; + position: relative; + background: #fff; + border: 1px solid #f4f4f4; + padding: 20px; + margin: 10px 25px; } + .invoice-title { - margin-top: 0; + margin-top: 0; } + /* * Page: Profile * ------------- */ .profile-user-img { - margin: 0 auto; - width: 100px; - padding: 3px; - border: 3px solid #d2d6de; + margin: 0 auto; + width: 100px; + padding: 3px; + border: 3px solid #d2d6de; } + .profile-username { - font-size: 21px; - margin-top: 5px; + font-size: 21px; + margin-top: 5px; } + .post { - border-bottom: 1px solid #d2d6de; - margin-bottom: 15px; - padding-bottom: 15px; - color: #666; + border-bottom: 1px solid #d2d6de; + margin-bottom: 15px; + padding-bottom: 15px; + color: #666; } + .post:last-of-type { - border-bottom: 0; - margin-bottom: 0; - padding-bottom: 0; + border-bottom: 0; + margin-bottom: 0; + padding-bottom: 0; } + .post .user-block { - margin-bottom: 15px; + margin-bottom: 15px; } + /* * Social Buttons for Bootstrap * @@ -3353,850 +4006,1008 @@ table.text-center th { * https://github.com/lipis/bootstrap-social */ .btn-social { - position: relative; - padding-left: 44px; - text-align: left; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; + position: relative; + padding-left: 44px; + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; } + .btn-social > :first-child { - position: absolute; - left: 0; - top: 0; - bottom: 0; - width: 32px; - line-height: 34px; - font-size: 1.6em; - text-align: center; - border-right: 1px solid rgba(0, 0, 0, 0.2); + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: 32px; + line-height: 34px; + font-size: 1.6em; + text-align: center; + border-right: 1px solid rgba(0, 0, 0, 0.2); } + .btn-social.btn-lg { - padding-left: 61px; + padding-left: 61px; } + .btn-social.btn-lg > :first-child { - line-height: 45px; - width: 45px; - font-size: 1.8em; + line-height: 45px; + width: 45px; + font-size: 1.8em; } + .btn-social.btn-sm { - padding-left: 38px; + padding-left: 38px; } + .btn-social.btn-sm > :first-child { - line-height: 28px; - width: 28px; - font-size: 1.4em; + line-height: 28px; + width: 28px; + font-size: 1.4em; } + .btn-social.btn-xs { - padding-left: 30px; + padding-left: 30px; } + .btn-social.btn-xs > :first-child { - line-height: 20px; - width: 20px; - font-size: 1.2em; + line-height: 20px; + width: 20px; + font-size: 1.2em; } + .btn-social-icon { - position: relative; - padding-left: 44px; - text-align: left; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - height: 34px; - width: 34px; - padding: 0; + position: relative; + padding-left: 44px; + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + height: 34px; + width: 34px; + padding: 0; } + .btn-social-icon > :first-child { - position: absolute; - left: 0; - top: 0; - bottom: 0; - width: 32px; - line-height: 34px; - font-size: 1.6em; - text-align: center; - border-right: 1px solid rgba(0, 0, 0, 0.2); + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: 32px; + line-height: 34px; + font-size: 1.6em; + text-align: center; + border-right: 1px solid rgba(0, 0, 0, 0.2); } + .btn-social-icon.btn-lg { - padding-left: 61px; + padding-left: 61px; } + .btn-social-icon.btn-lg > :first-child { - line-height: 45px; - width: 45px; - font-size: 1.8em; + line-height: 45px; + width: 45px; + font-size: 1.8em; } + .btn-social-icon.btn-sm { - padding-left: 38px; + padding-left: 38px; } + .btn-social-icon.btn-sm > :first-child { - line-height: 28px; - width: 28px; - font-size: 1.4em; + line-height: 28px; + width: 28px; + font-size: 1.4em; } + .btn-social-icon.btn-xs { - padding-left: 30px; + padding-left: 30px; } + .btn-social-icon.btn-xs > :first-child { - line-height: 20px; - width: 20px; - font-size: 1.2em; + line-height: 20px; + width: 20px; + font-size: 1.2em; } + .btn-social-icon > :first-child { - border: none; - text-align: center; - width: 100%; + border: none; + text-align: center; + width: 100%; } + .btn-social-icon.btn-lg { - height: 45px; - width: 45px; - padding-left: 0; - padding-right: 0; + height: 45px; + width: 45px; + padding-left: 0; + padding-right: 0; } + .btn-social-icon.btn-sm { - height: 30px; - width: 30px; - padding-left: 0; - padding-right: 0; + height: 30px; + width: 30px; + padding-left: 0; + padding-right: 0; } + .btn-social-icon.btn-xs { - height: 22px; - width: 22px; - padding-left: 0; - padding-right: 0; + height: 22px; + width: 22px; + padding-left: 0; + padding-right: 0; } + .btn-adn { - color: #ffffff; - background-color: #d87a68; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #d87a68; + border-color: rgba(0, 0, 0, 0.2); } + .btn-adn:focus, .btn-adn.focus { - color: #ffffff; - background-color: #ce563f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #ce563f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-adn:hover { - color: #ffffff; - background-color: #ce563f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #ce563f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-adn:active, .btn-adn.active, .open > .dropdown-toggle.btn-adn { - color: #ffffff; - background-color: #ce563f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #ce563f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-adn:active, .btn-adn.active, .open > .dropdown-toggle.btn-adn { - background-image: none; + background-image: none; } + .btn-adn .badge { - color: #d87a68; - background-color: #ffffff; + color: #d87a68; + background-color: #ffffff; } + .btn-bitbucket { - color: #ffffff; - background-color: #205081; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #205081; + border-color: rgba(0, 0, 0, 0.2); } + .btn-bitbucket:focus, .btn-bitbucket.focus { - color: #ffffff; - background-color: #163758; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #163758; + border-color: rgba(0, 0, 0, 0.2); } + .btn-bitbucket:hover { - color: #ffffff; - background-color: #163758; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #163758; + border-color: rgba(0, 0, 0, 0.2); } + .btn-bitbucket:active, .btn-bitbucket.active, .open > .dropdown-toggle.btn-bitbucket { - color: #ffffff; - background-color: #163758; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #163758; + border-color: rgba(0, 0, 0, 0.2); } + .btn-bitbucket:active, .btn-bitbucket.active, .open > .dropdown-toggle.btn-bitbucket { - background-image: none; + background-image: none; } + .btn-bitbucket .badge { - color: #205081; - background-color: #ffffff; + color: #205081; + background-color: #ffffff; } + .btn-dropbox { - color: #ffffff; - background-color: #1087dd; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1087dd; + border-color: rgba(0, 0, 0, 0.2); } + .btn-dropbox:focus, .btn-dropbox.focus { - color: #ffffff; - background-color: #0d6aad; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #0d6aad; + border-color: rgba(0, 0, 0, 0.2); } + .btn-dropbox:hover { - color: #ffffff; - background-color: #0d6aad; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #0d6aad; + border-color: rgba(0, 0, 0, 0.2); } + .btn-dropbox:active, .btn-dropbox.active, .open > .dropdown-toggle.btn-dropbox { - color: #ffffff; - background-color: #0d6aad; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #0d6aad; + border-color: rgba(0, 0, 0, 0.2); } + .btn-dropbox:active, .btn-dropbox.active, .open > .dropdown-toggle.btn-dropbox { - background-image: none; + background-image: none; } + .btn-dropbox .badge { - color: #1087dd; - background-color: #ffffff; + color: #1087dd; + background-color: #ffffff; } + .btn-facebook { - color: #ffffff; - background-color: #3b5998; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #3b5998; + border-color: rgba(0, 0, 0, 0.2); } + .btn-facebook:focus, .btn-facebook.focus { - color: #ffffff; - background-color: #2d4373; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2d4373; + border-color: rgba(0, 0, 0, 0.2); } + .btn-facebook:hover { - color: #ffffff; - background-color: #2d4373; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2d4373; + border-color: rgba(0, 0, 0, 0.2); } + .btn-facebook:active, .btn-facebook.active, .open > .dropdown-toggle.btn-facebook { - color: #ffffff; - background-color: #2d4373; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2d4373; + border-color: rgba(0, 0, 0, 0.2); } + .btn-facebook:active, .btn-facebook.active, .open > .dropdown-toggle.btn-facebook { - background-image: none; + background-image: none; } + .btn-facebook .badge { - color: #3b5998; - background-color: #ffffff; + color: #3b5998; + background-color: #ffffff; } + .btn-flickr { - color: #ffffff; - background-color: #ff0084; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #ff0084; + border-color: rgba(0, 0, 0, 0.2); } + .btn-flickr:focus, .btn-flickr.focus { - color: #ffffff; - background-color: #cc006a; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #cc006a; + border-color: rgba(0, 0, 0, 0.2); } + .btn-flickr:hover { - color: #ffffff; - background-color: #cc006a; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #cc006a; + border-color: rgba(0, 0, 0, 0.2); } + .btn-flickr:active, .btn-flickr.active, .open > .dropdown-toggle.btn-flickr { - color: #ffffff; - background-color: #cc006a; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #cc006a; + border-color: rgba(0, 0, 0, 0.2); } + .btn-flickr:active, .btn-flickr.active, .open > .dropdown-toggle.btn-flickr { - background-image: none; + background-image: none; } + .btn-flickr .badge { - color: #ff0084; - background-color: #ffffff; + color: #ff0084; + background-color: #ffffff; } + .btn-foursquare { - color: #ffffff; - background-color: #f94877; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #f94877; + border-color: rgba(0, 0, 0, 0.2); } + .btn-foursquare:focus, .btn-foursquare.focus { - color: #ffffff; - background-color: #f71752; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #f71752; + border-color: rgba(0, 0, 0, 0.2); } + .btn-foursquare:hover { - color: #ffffff; - background-color: #f71752; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #f71752; + border-color: rgba(0, 0, 0, 0.2); } + .btn-foursquare:active, .btn-foursquare.active, .open > .dropdown-toggle.btn-foursquare { - color: #ffffff; - background-color: #f71752; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #f71752; + border-color: rgba(0, 0, 0, 0.2); } + .btn-foursquare:active, .btn-foursquare.active, .open > .dropdown-toggle.btn-foursquare { - background-image: none; + background-image: none; } + .btn-foursquare .badge { - color: #f94877; - background-color: #ffffff; + color: #f94877; + background-color: #ffffff; } + .btn-github { - color: #ffffff; - background-color: #444444; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #444444; + border-color: rgba(0, 0, 0, 0.2); } + .btn-github:focus, .btn-github.focus { - color: #ffffff; - background-color: #2b2b2b; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2b2b2b; + border-color: rgba(0, 0, 0, 0.2); } + .btn-github:hover { - color: #ffffff; - background-color: #2b2b2b; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2b2b2b; + border-color: rgba(0, 0, 0, 0.2); } + .btn-github:active, .btn-github.active, .open > .dropdown-toggle.btn-github { - color: #ffffff; - background-color: #2b2b2b; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2b2b2b; + border-color: rgba(0, 0, 0, 0.2); } + .btn-github:active, .btn-github.active, .open > .dropdown-toggle.btn-github { - background-image: none; + background-image: none; } + .btn-github .badge { - color: #444444; - background-color: #ffffff; + color: #444444; + background-color: #ffffff; } + .btn-google { - color: #ffffff; - background-color: #dd4b39; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #dd4b39; + border-color: rgba(0, 0, 0, 0.2); } + .btn-google:focus, .btn-google.focus { - color: #ffffff; - background-color: #c23321; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #c23321; + border-color: rgba(0, 0, 0, 0.2); } + .btn-google:hover { - color: #ffffff; - background-color: #c23321; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #c23321; + border-color: rgba(0, 0, 0, 0.2); } + .btn-google:active, .btn-google.active, .open > .dropdown-toggle.btn-google { - color: #ffffff; - background-color: #c23321; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #c23321; + border-color: rgba(0, 0, 0, 0.2); } + .btn-google:active, .btn-google.active, .open > .dropdown-toggle.btn-google { - background-image: none; + background-image: none; } + .btn-google .badge { - color: #dd4b39; - background-color: #ffffff; + color: #dd4b39; + background-color: #ffffff; } + .btn-instagram { - color: #ffffff; - background-color: #3f729b; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #3f729b; + border-color: rgba(0, 0, 0, 0.2); } + .btn-instagram:focus, .btn-instagram.focus { - color: #ffffff; - background-color: #305777; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #305777; + border-color: rgba(0, 0, 0, 0.2); } + .btn-instagram:hover { - color: #ffffff; - background-color: #305777; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #305777; + border-color: rgba(0, 0, 0, 0.2); } + .btn-instagram:active, .btn-instagram.active, .open > .dropdown-toggle.btn-instagram { - color: #ffffff; - background-color: #305777; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #305777; + border-color: rgba(0, 0, 0, 0.2); } + .btn-instagram:active, .btn-instagram.active, .open > .dropdown-toggle.btn-instagram { - background-image: none; + background-image: none; } + .btn-instagram .badge { - color: #3f729b; - background-color: #ffffff; + color: #3f729b; + background-color: #ffffff; } + .btn-linkedin { - color: #ffffff; - background-color: #007bb6; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #007bb6; + border-color: rgba(0, 0, 0, 0.2); } + .btn-linkedin:focus, .btn-linkedin.focus { - color: #ffffff; - background-color: #005983; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #005983; + border-color: rgba(0, 0, 0, 0.2); } + .btn-linkedin:hover { - color: #ffffff; - background-color: #005983; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #005983; + border-color: rgba(0, 0, 0, 0.2); } + .btn-linkedin:active, .btn-linkedin.active, .open > .dropdown-toggle.btn-linkedin { - color: #ffffff; - background-color: #005983; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #005983; + border-color: rgba(0, 0, 0, 0.2); } + .btn-linkedin:active, .btn-linkedin.active, .open > .dropdown-toggle.btn-linkedin { - background-image: none; + background-image: none; } + .btn-linkedin .badge { - color: #007bb6; - background-color: #ffffff; + color: #007bb6; + background-color: #ffffff; } + .btn-microsoft { - color: #ffffff; - background-color: #2672ec; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2672ec; + border-color: rgba(0, 0, 0, 0.2); } + .btn-microsoft:focus, .btn-microsoft.focus { - color: #ffffff; - background-color: #125acd; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #125acd; + border-color: rgba(0, 0, 0, 0.2); } + .btn-microsoft:hover { - color: #ffffff; - background-color: #125acd; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #125acd; + border-color: rgba(0, 0, 0, 0.2); } + .btn-microsoft:active, .btn-microsoft.active, .open > .dropdown-toggle.btn-microsoft { - color: #ffffff; - background-color: #125acd; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #125acd; + border-color: rgba(0, 0, 0, 0.2); } + .btn-microsoft:active, .btn-microsoft.active, .open > .dropdown-toggle.btn-microsoft { - background-image: none; + background-image: none; } + .btn-microsoft .badge { - color: #2672ec; - background-color: #ffffff; + color: #2672ec; + background-color: #ffffff; } + .btn-openid { - color: #ffffff; - background-color: #f7931e; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #f7931e; + border-color: rgba(0, 0, 0, 0.2); } + .btn-openid:focus, .btn-openid.focus { - color: #ffffff; - background-color: #da7908; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #da7908; + border-color: rgba(0, 0, 0, 0.2); } + .btn-openid:hover { - color: #ffffff; - background-color: #da7908; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #da7908; + border-color: rgba(0, 0, 0, 0.2); } + .btn-openid:active, .btn-openid.active, .open > .dropdown-toggle.btn-openid { - color: #ffffff; - background-color: #da7908; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #da7908; + border-color: rgba(0, 0, 0, 0.2); } + .btn-openid:active, .btn-openid.active, .open > .dropdown-toggle.btn-openid { - background-image: none; + background-image: none; } + .btn-openid .badge { - color: #f7931e; - background-color: #ffffff; + color: #f7931e; + background-color: #ffffff; } + .btn-pinterest { - color: #ffffff; - background-color: #cb2027; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #cb2027; + border-color: rgba(0, 0, 0, 0.2); } + .btn-pinterest:focus, .btn-pinterest.focus { - color: #ffffff; - background-color: #9f191f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #9f191f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-pinterest:hover { - color: #ffffff; - background-color: #9f191f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #9f191f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-pinterest:active, .btn-pinterest.active, .open > .dropdown-toggle.btn-pinterest { - color: #ffffff; - background-color: #9f191f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #9f191f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-pinterest:active, .btn-pinterest.active, .open > .dropdown-toggle.btn-pinterest { - background-image: none; + background-image: none; } + .btn-pinterest .badge { - color: #cb2027; - background-color: #ffffff; + color: #cb2027; + background-color: #ffffff; } + .btn-reddit { - color: #000000; - background-color: #eff7ff; - border-color: rgba(0, 0, 0, 0.2); + color: #000000; + background-color: #eff7ff; + border-color: rgba(0, 0, 0, 0.2); } + .btn-reddit:focus, .btn-reddit.focus { - color: #000000; - background-color: #bcddff; - border-color: rgba(0, 0, 0, 0.2); + color: #000000; + background-color: #bcddff; + border-color: rgba(0, 0, 0, 0.2); } + .btn-reddit:hover { - color: #000000; - background-color: #bcddff; - border-color: rgba(0, 0, 0, 0.2); + color: #000000; + background-color: #bcddff; + border-color: rgba(0, 0, 0, 0.2); } + .btn-reddit:active, .btn-reddit.active, .open > .dropdown-toggle.btn-reddit { - color: #000000; - background-color: #bcddff; - border-color: rgba(0, 0, 0, 0.2); + color: #000000; + background-color: #bcddff; + border-color: rgba(0, 0, 0, 0.2); } + .btn-reddit:active, .btn-reddit.active, .open > .dropdown-toggle.btn-reddit { - background-image: none; + background-image: none; } + .btn-reddit .badge { - color: #eff7ff; - background-color: #000000; + color: #eff7ff; + background-color: #000000; } + .btn-soundcloud { - color: #ffffff; - background-color: #ff5500; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #ff5500; + border-color: rgba(0, 0, 0, 0.2); } + .btn-soundcloud:focus, .btn-soundcloud.focus { - color: #ffffff; - background-color: #cc4400; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #cc4400; + border-color: rgba(0, 0, 0, 0.2); } + .btn-soundcloud:hover { - color: #ffffff; - background-color: #cc4400; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #cc4400; + border-color: rgba(0, 0, 0, 0.2); } + .btn-soundcloud:active, .btn-soundcloud.active, .open > .dropdown-toggle.btn-soundcloud { - color: #ffffff; - background-color: #cc4400; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #cc4400; + border-color: rgba(0, 0, 0, 0.2); } + .btn-soundcloud:active, .btn-soundcloud.active, .open > .dropdown-toggle.btn-soundcloud { - background-image: none; + background-image: none; } + .btn-soundcloud .badge { - color: #ff5500; - background-color: #ffffff; + color: #ff5500; + background-color: #ffffff; } + .btn-tumblr { - color: #ffffff; - background-color: #2c4762; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2c4762; + border-color: rgba(0, 0, 0, 0.2); } + .btn-tumblr:focus, .btn-tumblr.focus { - color: #ffffff; - background-color: #1c2d3f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1c2d3f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-tumblr:hover { - color: #ffffff; - background-color: #1c2d3f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1c2d3f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-tumblr:active, .btn-tumblr.active, .open > .dropdown-toggle.btn-tumblr { - color: #ffffff; - background-color: #1c2d3f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1c2d3f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-tumblr:active, .btn-tumblr.active, .open > .dropdown-toggle.btn-tumblr { - background-image: none; + background-image: none; } + .btn-tumblr .badge { - color: #2c4762; - background-color: #ffffff; + color: #2c4762; + background-color: #ffffff; } + .btn-twitter { - color: #ffffff; - background-color: #55acee; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #55acee; + border-color: rgba(0, 0, 0, 0.2); } + .btn-twitter:focus, .btn-twitter.focus { - color: #ffffff; - background-color: #2795e9; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2795e9; + border-color: rgba(0, 0, 0, 0.2); } + .btn-twitter:hover { - color: #ffffff; - background-color: #2795e9; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2795e9; + border-color: rgba(0, 0, 0, 0.2); } + .btn-twitter:active, .btn-twitter.active, .open > .dropdown-toggle.btn-twitter { - color: #ffffff; - background-color: #2795e9; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #2795e9; + border-color: rgba(0, 0, 0, 0.2); } + .btn-twitter:active, .btn-twitter.active, .open > .dropdown-toggle.btn-twitter { - background-image: none; + background-image: none; } + .btn-twitter .badge { - color: #55acee; - background-color: #ffffff; + color: #55acee; + background-color: #ffffff; } + .btn-vimeo { - color: #ffffff; - background-color: #1ab7ea; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1ab7ea; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vimeo:focus, .btn-vimeo.focus { - color: #ffffff; - background-color: #1295bf; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1295bf; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vimeo:hover { - color: #ffffff; - background-color: #1295bf; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1295bf; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vimeo:active, .btn-vimeo.active, .open > .dropdown-toggle.btn-vimeo { - color: #ffffff; - background-color: #1295bf; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #1295bf; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vimeo:active, .btn-vimeo.active, .open > .dropdown-toggle.btn-vimeo { - background-image: none; + background-image: none; } + .btn-vimeo .badge { - color: #1ab7ea; - background-color: #ffffff; + color: #1ab7ea; + background-color: #ffffff; } + .btn-vk { - color: #ffffff; - background-color: #587ea3; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #587ea3; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vk:focus, .btn-vk.focus { - color: #ffffff; - background-color: #466482; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #466482; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vk:hover { - color: #ffffff; - background-color: #466482; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #466482; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vk:active, .btn-vk.active, .open > .dropdown-toggle.btn-vk { - color: #ffffff; - background-color: #466482; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #466482; + border-color: rgba(0, 0, 0, 0.2); } + .btn-vk:active, .btn-vk.active, .open > .dropdown-toggle.btn-vk { - background-image: none; + background-image: none; } + .btn-vk .badge { - color: #587ea3; - background-color: #ffffff; + color: #587ea3; + background-color: #ffffff; } + .btn-yahoo { - color: #ffffff; - background-color: #720e9e; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #720e9e; + border-color: rgba(0, 0, 0, 0.2); } + .btn-yahoo:focus, .btn-yahoo.focus { - color: #ffffff; - background-color: #500a6f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #500a6f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-yahoo:hover { - color: #ffffff; - background-color: #500a6f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #500a6f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-yahoo:active, .btn-yahoo.active, .open > .dropdown-toggle.btn-yahoo { - color: #ffffff; - background-color: #500a6f; - border-color: rgba(0, 0, 0, 0.2); + color: #ffffff; + background-color: #500a6f; + border-color: rgba(0, 0, 0, 0.2); } + .btn-yahoo:active, .btn-yahoo.active, .open > .dropdown-toggle.btn-yahoo { - background-image: none; + background-image: none; } + .btn-yahoo .badge { - color: #720e9e; - background-color: #ffffff; + color: #720e9e; + background-color: #ffffff; } + /* * Plugin: Full Calendar * --------------------- */ .fc-button { - background: #f4f4f4; - background-image: none; - color: #444; - border-color: #ddd; - border-bottom-color: #ddd; + background: #f4f4f4; + background-image: none; + color: #444; + border-color: #ddd; + border-bottom-color: #ddd; } + .fc-button:hover, .fc-button:active, .fc-button.hover { - background-color: #e9e9e9; + background-color: #e9e9e9; } + .fc-header-title h2 { - font-size: 15px; - line-height: 1.6em; - color: #666; - margin-left: 10px; + font-size: 15px; + line-height: 1.6em; + color: #666; + margin-left: 10px; } + .fc-header-right { - padding-right: 10px; + padding-right: 10px; } + .fc-header-left { - padding-left: 10px; + padding-left: 10px; } + .fc-widget-header { - background: #fafafa; + background: #fafafa; } + .fc-grid { - width: 100%; - border: 0; + width: 100%; + border: 0; } + .fc-widget-header:first-of-type, .fc-widget-content:first-of-type { - border-left: 0; - border-right: 0; + border-left: 0; + border-right: 0; } + .fc-widget-header:last-of-type, .fc-widget-content:last-of-type { - border-right: 0; + border-right: 0; } + .fc-toolbar { - padding: 10px; - margin: 0; + padding: 10px; + margin: 0; } + .fc-day-number { - font-size: 20px; - font-weight: 300; - padding-right: 10px; + font-size: 20px; + font-weight: 300; + padding-right: 10px; } + .fc-color-picker { - list-style: none; - margin: 0; - padding: 0; + list-style: none; + margin: 0; + padding: 0; } + .fc-color-picker > li { - float: left; - font-size: 30px; - margin-right: 5px; - line-height: 30px; + float: left; + font-size: 30px; + margin-right: 5px; + line-height: 30px; } + .fc-color-picker > li .fa { - -webkit-transition: -webkit-transform linear 0.3s; - -moz-transition: -moz-transform linear 0.3s; - -o-transition: -o-transform linear 0.3s; - transition: transform linear 0.3s; + -webkit-transition: -webkit-transform linear 0.3s; + -moz-transition: -moz-transform linear 0.3s; + -o-transition: -o-transform linear 0.3s; + transition: transform linear 0.3s; } + .fc-color-picker > li .fa:hover { - -webkit-transform: rotate(30deg); - -ms-transform: rotate(30deg); - -o-transform: rotate(30deg); - transform: rotate(30deg); + -webkit-transform: rotate(30deg); + -ms-transform: rotate(30deg); + -o-transform: rotate(30deg); + transform: rotate(30deg); } + #add-new-event { - -webkit-transition: all linear 0.3s; - -o-transition: all linear 0.3s; - transition: all linear 0.3s; + -webkit-transition: all linear 0.3s; + -o-transition: all linear 0.3s; + transition: all linear 0.3s; } + .external-event { - padding: 5px 10px; - font-weight: bold; - margin-bottom: 4px; - box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); - border-radius: 3px; - cursor: move; + padding: 5px 10px; + font-weight: bold; + margin-bottom: 4px; + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + text-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); + border-radius: 3px; + cursor: move; } + .external-event:hover { - box-shadow: inset 0 0 90px rgba(0, 0, 0, 0.2); + box-shadow: inset 0 0 90px rgba(0, 0, 0, 0.2); } + /* * Plugin: Select2 * --------------- @@ -4207,132 +5018,164 @@ table.text-center th { .select2-selection:focus, .select2-container--default:active, .select2-selection:active { - outline: none; + outline: none; } + .select2-container--default .select2-selection--single, .select2-selection .select2-selection--single { - border: 1px solid #d2d6de; - border-radius: 0; - padding: 6px 12px; - height: 34px; + border: 1px solid #d2d6de; + border-radius: 0; + padding: 6px 12px; + height: 34px; } + .select2-container--default.select2-container--open { - border-color: #3c8dbc; + border-color: #3c8dbc; } + .select2-dropdown { - border: 1px solid #d2d6de; - border-radius: 0; + border: 1px solid #d2d6de; + border-radius: 0; } + .select2-container--default .select2-results__option--highlighted[aria-selected] { - background-color: #3c8dbc; - color: white; + background-color: #3c8dbc; + color: white; } + .select2-results__option { - padding: 6px 12px; - user-select: none; - -webkit-user-select: none; + padding: 6px 12px; + user-select: none; + -webkit-user-select: none; } + .select2-container .select2-selection--single .select2-selection__rendered { - padding-left: 0; - padding-right: 0; - height: auto; - margin-top: -4px; + padding-left: 0; + padding-right: 0; + height: auto; + margin-top: -4px; } + .select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered { - padding-right: 6px; - padding-left: 20px; + padding-right: 6px; + padding-left: 20px; } + .select2-container--default .select2-selection--single .select2-selection__arrow { - height: 28px; - right: 3px; + height: 28px; + right: 3px; } + .select2-container--default .select2-selection--single .select2-selection__arrow b { - margin-top: 0; + margin-top: 0; } + .select2-dropdown .select2-search__field, .select2-search--inline .select2-search__field { - border: 1px solid #d2d6de; + border: 1px solid #d2d6de; } + .select2-dropdown .select2-search__field:focus, .select2-search--inline .select2-search__field:focus { - outline: none; - border: 1px solid #3c8dbc; + outline: none; + border: 1px solid #3c8dbc; } + .select2-container--default .select2-results__option[aria-disabled=true] { - color: #999; + color: #999; } + .select2-container--default .select2-results__option[aria-selected=true] { - background-color: #ddd; + background-color: #ddd; } + .select2-container--default .select2-results__option[aria-selected=true], .select2-container--default .select2-results__option[aria-selected=true]:hover { - color: #444; + color: #444; } + .select2-container--default .select2-selection--multiple { - border: 1px solid #d2d6de; - border-radius: 0; + border: 1px solid #d2d6de; + border-radius: 0; } + .select2-container--default .select2-selection--multiple:focus { - border-color: #3c8dbc; + border-color: #3c8dbc; } + .select2-container--default.select2-container--focus .select2-selection--multiple { - border-color: #d2d6de; + border-color: #d2d6de; } + .select2-container--default .select2-selection--multiple .select2-selection__choice { - background-color: #3c8dbc; - border-color: #367fa9; - padding: 1px 10px; - color: #fff; + background-color: #3c8dbc; + border-color: #367fa9; + padding: 1px 10px; + color: #fff; } + .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { - margin-right: 5px; - color: rgba(255, 255, 255, 0.7); + margin-right: 5px; + color: rgba(255, 255, 255, 0.7); } + .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { - color: #fff; + color: #fff; } + .select2-container .select2-selection--single .select2-selection__rendered { - padding-right: 10px; + padding-right: 10px; } + /* * General: Miscellaneous * ---------------------- */ .pad { - padding: 10px; + padding: 10px; } + .margin { - margin: 10px; + margin: 10px; } + .margin-bottom { - margin-bottom: 20px; + margin-bottom: 20px; } + .margin-bottom-none { - margin-bottom: 0; + margin-bottom: 0; } + .margin-r-5 { - margin-right: 5px; + margin-right: 5px; } + .inline { - display: inline; + display: inline; } + .description-block { - display: block; - margin: 10px 0; - text-align: center; + display: block; + margin: 10px 0; + text-align: center; } + .description-block.margin-bottom { - margin-bottom: 25px; + margin-bottom: 25px; } + .description-block > .description-header { - margin: 0; - padding: 0; - font-weight: 600; - font-size: 16px; + margin: 0; + padding: 0; + font-weight: 600; + font-size: 16px; } + .description-block > .description-text { - text-transform: uppercase; + text-transform: uppercase; } + .bg-red, .bg-yellow, .bg-aqua, @@ -4392,541 +5235,660 @@ table.text-center th { .modal-danger .modal-body, .modal-danger .modal-header, .modal-danger .modal-footer { - color: #fff !important; + color: #fff !important; } + .bg-gray { - color: #000; - background-color: #d2d6de !important; + color: #000; + background-color: #d2d6de !important; } + .bg-gray-light { - background-color: #f7f7f7; + background-color: #f7f7f7; } + .bg-black { - background-color: #111111 !important; + background-color: #111111 !important; } + .bg-red, .callout.callout-danger, .alert-danger, .alert-error, .label-danger, .modal-danger .modal-body { - background-color: #dd4b39 !important; + background-color: #dd4b39 !important; } + .bg-yellow, .callout.callout-warning, .alert-warning, .label-warning, .modal-warning .modal-body { - background-color: #f39c12 !important; + background-color: #f39c12 !important; } + .bg-aqua, .callout.callout-info, .alert-info, .label-info, .modal-info .modal-body { - background-color: #00c0ef !important; + background-color: #00c0ef !important; } + .bg-blue { - background-color: #0073b7 !important; + background-color: #0073b7 !important; } + .bg-light-blue, .label-primary, .modal-primary .modal-body { - background-color: #3c8dbc !important; + background-color: #3c8dbc !important; } + .bg-green, .callout.callout-success, .alert-success, .label-success, .modal-success .modal-body { - background-color: #00a65a !important; + background-color: #00a65a !important; } + .bg-navy { - background-color: #001f3f !important; + background-color: #001f3f !important; } + .bg-teal { - background-color: #39cccc !important; + background-color: #39cccc !important; } + .bg-olive { - background-color: #3d9970 !important; + background-color: #3d9970 !important; } + .bg-lime { - background-color: #01ff70 !important; + background-color: #01ff70 !important; } + .bg-orange { - background-color: #ff851b !important; + background-color: #ff851b !important; } + .bg-fuchsia { - background-color: #f012be !important; + background-color: #f012be !important; } + .bg-purple { - background-color: #605ca8 !important; + background-color: #605ca8 !important; } + .bg-maroon { - background-color: #d81b60 !important; + background-color: #d81b60 !important; } + .bg-gray-active { - color: #000; - background-color: #b5bbc8 !important; + color: #000; + background-color: #b5bbc8 !important; } + .bg-black-active { - background-color: #000000 !important; + background-color: #000000 !important; } + .bg-red-active, .modal-danger .modal-header, .modal-danger .modal-footer { - background-color: #d33724 !important; + background-color: #d33724 !important; } + .bg-yellow-active, .modal-warning .modal-header, .modal-warning .modal-footer { - background-color: #db8b0b !important; + background-color: #db8b0b !important; } + .bg-aqua-active, .modal-info .modal-header, .modal-info .modal-footer { - background-color: #00a7d0 !important; + background-color: #00a7d0 !important; } + .bg-blue-active { - background-color: #005384 !important; + background-color: #005384 !important; } + .bg-light-blue-active, .modal-primary .modal-header, .modal-primary .modal-footer { - background-color: #357ca5 !important; + background-color: #357ca5 !important; } + .bg-green-active, .modal-success .modal-header, .modal-success .modal-footer { - background-color: #008d4c !important; + background-color: #008d4c !important; } + .bg-navy-active { - background-color: #001a35 !important; + background-color: #001a35 !important; } + .bg-teal-active { - background-color: #30bbbb !important; + background-color: #30bbbb !important; } + .bg-olive-active { - background-color: #368763 !important; + background-color: #368763 !important; } + .bg-lime-active { - background-color: #00e765 !important; + background-color: #00e765 !important; } + .bg-orange-active { - background-color: #ff7701 !important; + background-color: #ff7701 !important; } + .bg-fuchsia-active { - background-color: #db0ead !important; + background-color: #db0ead !important; } + .bg-purple-active { - background-color: #555299 !important; + background-color: #555299 !important; } + .bg-maroon-active { - background-color: #ca195a !important; + background-color: #ca195a !important; } + [class^="bg-"].disabled { - opacity: 0.65; - filter: alpha(opacity=65); + opacity: 0.65; + filter: alpha(opacity=65); } + .text-red { - color: #dd4b39 !important; + color: #dd4b39 !important; } + .text-yellow { - color: #f39c12 !important; + color: #f39c12 !important; } + .text-aqua { - color: #00c0ef !important; + color: #00c0ef !important; } + .text-blue { - color: #0073b7 !important; + color: #0073b7 !important; } + .text-black { - color: #111111 !important; + color: #111111 !important; } + .text-light-blue { - color: #3c8dbc !important; + color: #3c8dbc !important; } + .text-green { - color: #00a65a !important; + color: #00a65a !important; } + .text-gray { - color: #d2d6de !important; + color: #d2d6de !important; } + .text-navy { - color: #001f3f !important; + color: #001f3f !important; } + .text-teal { - color: #39cccc !important; + color: #39cccc !important; } + .text-olive { - color: #3d9970 !important; + color: #3d9970 !important; } + .text-lime { - color: #01ff70 !important; + color: #01ff70 !important; } + .text-orange { - color: #ff851b !important; + color: #ff851b !important; } + .text-fuchsia { - color: #f012be !important; + color: #f012be !important; } + .text-purple { - color: #605ca8 !important; + color: #605ca8 !important; } + .text-maroon { - color: #d81b60 !important; + color: #d81b60 !important; } + .link-muted { - color: #7a869d; + color: #7a869d; } + .link-muted:hover, .link-muted:focus { - color: #606c84; + color: #606c84; } + .link-black { - color: #666; + color: #666; } + .link-black:hover, .link-black:focus { - color: #999; + color: #999; } + .hide { - display: none !important; + display: none !important; } + .no-border { - border: 0 !important; + border: 0 !important; } + .no-padding { - padding: 0 !important; + padding: 0 !important; } + .no-margin { - margin: 0 !important; + margin: 0 !important; } + .no-shadow { - box-shadow: none !important; + box-shadow: none !important; } + .list-unstyled, .chart-legend, .contacts-list, .users-list, .mailbox-attachments { - list-style: none; - margin: 0; - padding: 0; + list-style: none; + margin: 0; + padding: 0; } + .list-group-unbordered > .list-group-item { - border-left: 0; - border-right: 0; - border-radius: 0; - padding-left: 0; - padding-right: 0; + border-left: 0; + border-right: 0; + border-radius: 0; + padding-left: 0; + padding-right: 0; } + .flat { - border-radius: 0 !important; + border-radius: 0 !important; } + .text-bold, .text-bold.table td, .text-bold.table th { - font-weight: 700; + font-weight: 700; } + .text-sm { - font-size: 12px; + font-size: 12px; } + .jqstooltip { - padding: 5px !important; - width: auto !important; - height: auto !important; + padding: 5px !important; + width: auto !important; + height: auto !important; } + .bg-teal-gradient { - background: #39cccc !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #39cccc), color-stop(1, #7adddd)) !important; - background: -ms-linear-gradient(bottom, #39cccc, #7adddd) !important; - background: -moz-linear-gradient(center bottom, #39cccc 0%, #7adddd 100%) !important; - background: -o-linear-gradient(#7adddd, #39cccc) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39cccc', GradientType=0) !important; - color: #fff; + background: #39cccc !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #39cccc), color-stop(1, #7adddd)) !important; + background: -ms-linear-gradient(bottom, #39cccc, #7adddd) !important; + background: -moz-linear-gradient(center bottom, #39cccc 0%, #7adddd 100%) !important; + background: -o-linear-gradient(#7adddd, #39cccc) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39cccc', GradientType=0) !important; + color: #fff; } + .bg-light-blue-gradient { - background: #3c8dbc !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #3c8dbc), color-stop(1, #67a8ce)) !important; - background: -ms-linear-gradient(bottom, #3c8dbc, #67a8ce) !important; - background: -moz-linear-gradient(center bottom, #3c8dbc 0%, #67a8ce 100%) !important; - background: -o-linear-gradient(#67a8ce, #3c8dbc) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#67a8ce', endColorstr='#3c8dbc', GradientType=0) !important; - color: #fff; + background: #3c8dbc !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #3c8dbc), color-stop(1, #67a8ce)) !important; + background: -ms-linear-gradient(bottom, #3c8dbc, #67a8ce) !important; + background: -moz-linear-gradient(center bottom, #3c8dbc 0%, #67a8ce 100%) !important; + background: -o-linear-gradient(#67a8ce, #3c8dbc) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#67a8ce', endColorstr='#3c8dbc', GradientType=0) !important; + color: #fff; } + .bg-blue-gradient { - background: #0073b7 !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #0073b7), color-stop(1, #0089db)) !important; - background: -ms-linear-gradient(bottom, #0073b7, #0089db) !important; - background: -moz-linear-gradient(center bottom, #0073b7 0%, #0089db 100%) !important; - background: -o-linear-gradient(#0089db, #0073b7) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0089db', endColorstr='#0073b7', GradientType=0) !important; - color: #fff; + background: #0073b7 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #0073b7), color-stop(1, #0089db)) !important; + background: -ms-linear-gradient(bottom, #0073b7, #0089db) !important; + background: -moz-linear-gradient(center bottom, #0073b7 0%, #0089db 100%) !important; + background: -o-linear-gradient(#0089db, #0073b7) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0089db', endColorstr='#0073b7', GradientType=0) !important; + color: #fff; } + .bg-aqua-gradient { - background: #00c0ef !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #00c0ef), color-stop(1, #14d1ff)) !important; - background: -ms-linear-gradient(bottom, #00c0ef, #14d1ff) !important; - background: -moz-linear-gradient(center bottom, #00c0ef 0%, #14d1ff 100%) !important; - background: -o-linear-gradient(#14d1ff, #00c0ef) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#14d1ff', endColorstr='#00c0ef', GradientType=0) !important; - color: #fff; + background: #00c0ef !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #00c0ef), color-stop(1, #14d1ff)) !important; + background: -ms-linear-gradient(bottom, #00c0ef, #14d1ff) !important; + background: -moz-linear-gradient(center bottom, #00c0ef 0%, #14d1ff 100%) !important; + background: -o-linear-gradient(#14d1ff, #00c0ef) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#14d1ff', endColorstr='#00c0ef', GradientType=0) !important; + color: #fff; } + .bg-yellow-gradient { - background: #f39c12 !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #f39c12), color-stop(1, #f7bc60)) !important; - background: -ms-linear-gradient(bottom, #f39c12, #f7bc60) !important; - background: -moz-linear-gradient(center bottom, #f39c12 0%, #f7bc60 100%) !important; - background: -o-linear-gradient(#f7bc60, #f39c12) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7bc60', endColorstr='#f39c12', GradientType=0) !important; - color: #fff; + background: #f39c12 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #f39c12), color-stop(1, #f7bc60)) !important; + background: -ms-linear-gradient(bottom, #f39c12, #f7bc60) !important; + background: -moz-linear-gradient(center bottom, #f39c12 0%, #f7bc60 100%) !important; + background: -o-linear-gradient(#f7bc60, #f39c12) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f7bc60', endColorstr='#f39c12', GradientType=0) !important; + color: #fff; } + .bg-purple-gradient { - background: #605ca8 !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #605ca8), color-stop(1, #9491c4)) !important; - background: -ms-linear-gradient(bottom, #605ca8, #9491c4) !important; - background: -moz-linear-gradient(center bottom, #605ca8 0%, #9491c4 100%) !important; - background: -o-linear-gradient(#9491c4, #605ca8) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9491c4', endColorstr='#605ca8', GradientType=0) !important; - color: #fff; + background: #605ca8 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #605ca8), color-stop(1, #9491c4)) !important; + background: -ms-linear-gradient(bottom, #605ca8, #9491c4) !important; + background: -moz-linear-gradient(center bottom, #605ca8 0%, #9491c4 100%) !important; + background: -o-linear-gradient(#9491c4, #605ca8) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9491c4', endColorstr='#605ca8', GradientType=0) !important; + color: #fff; } + .bg-green-gradient { - background: #00a65a !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #00a65a), color-stop(1, #00ca6d)) !important; - background: -ms-linear-gradient(bottom, #00a65a, #00ca6d) !important; - background: -moz-linear-gradient(center bottom, #00a65a 0%, #00ca6d 100%) !important; - background: -o-linear-gradient(#00ca6d, #00a65a) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ca6d', endColorstr='#00a65a', GradientType=0) !important; - color: #fff; + background: #00a65a !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #00a65a), color-stop(1, #00ca6d)) !important; + background: -ms-linear-gradient(bottom, #00a65a, #00ca6d) !important; + background: -moz-linear-gradient(center bottom, #00a65a 0%, #00ca6d 100%) !important; + background: -o-linear-gradient(#00ca6d, #00a65a) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ca6d', endColorstr='#00a65a', GradientType=0) !important; + color: #fff; } + .bg-red-gradient { - background: #dd4b39 !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #dd4b39), color-stop(1, #e47365)) !important; - background: -ms-linear-gradient(bottom, #dd4b39, #e47365) !important; - background: -moz-linear-gradient(center bottom, #dd4b39 0%, #e47365 100%) !important; - background: -o-linear-gradient(#e47365, #dd4b39) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e47365', endColorstr='#dd4b39', GradientType=0) !important; - color: #fff; + background: #dd4b39 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #dd4b39), color-stop(1, #e47365)) !important; + background: -ms-linear-gradient(bottom, #dd4b39, #e47365) !important; + background: -moz-linear-gradient(center bottom, #dd4b39 0%, #e47365 100%) !important; + background: -o-linear-gradient(#e47365, #dd4b39) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e47365', endColorstr='#dd4b39', GradientType=0) !important; + color: #fff; } + .bg-black-gradient { - background: #111111 !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #111111), color-stop(1, #2b2b2b)) !important; - background: -ms-linear-gradient(bottom, #111111, #2b2b2b) !important; - background: -moz-linear-gradient(center bottom, #111111 0%, #2b2b2b 100%) !important; - background: -o-linear-gradient(#2b2b2b, #111111) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2b2b2b', endColorstr='#111111', GradientType=0) !important; - color: #fff; + background: #111111 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #111111), color-stop(1, #2b2b2b)) !important; + background: -ms-linear-gradient(bottom, #111111, #2b2b2b) !important; + background: -moz-linear-gradient(center bottom, #111111 0%, #2b2b2b 100%) !important; + background: -o-linear-gradient(#2b2b2b, #111111) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2b2b2b', endColorstr='#111111', GradientType=0) !important; + color: #fff; } + .bg-maroon-gradient { - background: #d81b60 !important; - background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #d81b60), color-stop(1, #e73f7c)) !important; - background: -ms-linear-gradient(bottom, #d81b60, #e73f7c) !important; - background: -moz-linear-gradient(center bottom, #d81b60 0%, #e73f7c 100%) !important; - background: -o-linear-gradient(#e73f7c, #d81b60) !important; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e73f7c', endColorstr='#d81b60', GradientType=0) !important; - color: #fff; + background: #d81b60 !important; + background: -webkit-gradient(linear, left bottom, left top, color-stop(0, #d81b60), color-stop(1, #e73f7c)) !important; + background: -ms-linear-gradient(bottom, #d81b60, #e73f7c) !important; + background: -moz-linear-gradient(center bottom, #d81b60 0%, #e73f7c 100%) !important; + background: -o-linear-gradient(#e73f7c, #d81b60) !important; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e73f7c', endColorstr='#d81b60', GradientType=0) !important; + color: #fff; } + .description-block .description-icon { - font-size: 16px; + font-size: 16px; } + .no-pad-top { - padding-top: 0; + padding-top: 0; } + .position-static { - position: static !important; + position: static !important; } + .list-header { - font-size: 15px; - padding: 10px 4px; - font-weight: bold; - color: #666; + font-size: 15px; + padding: 10px 4px; + font-weight: bold; + color: #666; } + .list-seperator { - height: 1px; - background: #f4f4f4; - margin: 15px 0 9px 0; + height: 1px; + background: #f4f4f4; + margin: 15px 0 9px 0; } + .list-link > a { - padding: 4px; - color: #777; + padding: 4px; + color: #777; } + .list-link > a:hover { - color: #222; + color: #222; } + .font-light { - font-weight: 300; + font-weight: 300; } + .user-block:before, .user-block:after { - content: " "; - display: table; + content: " "; + display: table; } + .user-block:after { - clear: both; + clear: both; } + .user-block img { - width: 40px; - height: 40px; - float: left; + width: 40px; + height: 40px; + float: left; } + .user-block .username, .user-block .description, .user-block .comment { - display: block; - margin-left: 50px; + display: block; + margin-left: 50px; } + .user-block .username { - font-size: 16px; - font-weight: 600; + font-size: 16px; + font-weight: 600; } + .user-block .description { - color: #999; - font-size: 13px; + color: #999; + font-size: 13px; } + .user-block.user-block-sm .username, .user-block.user-block-sm .description, .user-block.user-block-sm .comment { - margin-left: 40px; + margin-left: 40px; } + .user-block.user-block-sm .username { - font-size: 14px; + font-size: 14px; } + .img-sm, .img-md, .img-lg, .box-comments .box-comment img, .user-block.user-block-sm img { - float: left; + float: left; } + .img-sm, .box-comments .box-comment img, .user-block.user-block-sm img { - width: 30px !important; - height: 30px !important; + width: 30px !important; + height: 30px !important; } + .img-sm + .img-push { - margin-left: 40px; + margin-left: 40px; } + .img-md { - width: 60px; - height: 60px; + width: 60px; + height: 60px; } + .img-md + .img-push { - margin-left: 70px; + margin-left: 70px; } + .img-lg { - width: 100px; - height: 100px; + width: 100px; + height: 100px; } + .img-lg + .img-push { - margin-left: 110px; + margin-left: 110px; } + .img-bordered { - border: 3px solid #d2d6de; - padding: 3px; + border: 3px solid #d2d6de; + padding: 3px; } + .img-bordered-sm { - border: 2px solid #d2d6de; - padding: 2px; + border: 2px solid #d2d6de; + padding: 2px; } + .attachment-block { - border: 1px solid #f4f4f4; - padding: 5px; - margin-bottom: 10px; - background: #f7f7f7; + border: 1px solid #f4f4f4; + padding: 5px; + margin-bottom: 10px; + background: #f7f7f7; } + .attachment-block .attachment-img { - max-width: 100px; - max-height: 100px; - height: auto; - float: left; + max-width: 100px; + max-height: 100px; + height: auto; + float: left; } + .attachment-block .attachment-pushed { - margin-left: 110px; + margin-left: 110px; } + .attachment-block .attachment-heading { - margin: 0; + margin: 0; } + .attachment-block .attachment-text { - color: #555; + color: #555; } + .connectedSortable { - min-height: 100px; + min-height: 100px; } + .ui-helper-hidden-accessible { - border: 0; - clip: rect(0 0 0 0); - height: 1px; - margin: -1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px; + border: 0; + clip: rect(0 0 0 0); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; } + .sort-highlight { - background: #f4f4f4; - border: 1px dashed #ddd; - margin-bottom: 10px; + background: #f4f4f4; + border: 1px dashed #ddd; + margin-bottom: 10px; } + .full-opacity-hover { - opacity: 0.65; - filter: alpha(opacity=65); + opacity: 0.65; + filter: alpha(opacity=65); } + .full-opacity-hover:hover { - opacity: 1; - filter: alpha(opacity=100); + opacity: 1; + filter: alpha(opacity=100); } + .chart { - position: relative; - overflow: hidden; - width: 100%; + position: relative; + overflow: hidden; + width: 100%; } + .chart svg, .chart canvas { - width: 100% !important; + width: 100% !important; } + /* * Misc: print * ----------- */ @media print { - .no-print, - .main-sidebar, - .left-side, - .main-header, - .content-header { - display: none !important; - } - .content-wrapper, - .right-side, - .main-footer { - margin-left: 0 !important; - min-height: 0 !important; - -webkit-transform: translate(0, 0) !important; - -ms-transform: translate(0, 0) !important; - -o-transform: translate(0, 0) !important; - transform: translate(0, 0) !important; - } - .fixed .content-wrapper, - .fixed .right-side { - padding-top: 0 !important; - } - .invoice { - width: 100%; - border: 0; - margin: 0; - padding: 0; - } - .invoice-col { - float: left; - width: 33.3333333%; - } - .table-responsive { - overflow: auto; - } - .table-responsive > .table tr th, - .table-responsive > .table tr td { - white-space: normal !important; - } + .no-print, + .main-sidebar, + .left-side, + .main-header, + .content-header { + display: none !important; + } + + .content-wrapper, + .right-side, + .main-footer { + margin-left: 0 !important; + min-height: 0 !important; + -webkit-transform: translate(0, 0) !important; + -ms-transform: translate(0, 0) !important; + -o-transform: translate(0, 0) !important; + transform: translate(0, 0) !important; + } + + .fixed .content-wrapper, + .fixed .right-side { + padding-top: 0 !important; + } + + .invoice { + width: 100%; + border: 0; + margin: 0; + padding: 0; + } + + .invoice-col { + float: left; + width: 33.3333333%; + } + + .table-responsive { + overflow: auto; + } + + .table-responsive > .table tr th, + .table-responsive > .table tr td { + white-space: normal !important; + } } diff --git a/public/lib/adminlte/css/skins/skin-blue-light.css b/public/lib/adminlte/css/skins/skin-blue-light.css index 7e63a6f12c..be502018b6 100755 --- a/public/lib/adminlte/css/skins/skin-blue-light.css +++ b/public/lib/adminlte/css/skins/skin-blue-light.css @@ -3,11 +3,13 @@ * ---------- */ .skin-blue-light .main-header .navbar { - background-color: #3c8dbc; + background-color: #3c8dbc; } + .skin-blue-light .main-header .navbar .nav > li > a { - color: #ffffff; + color: #ffffff; } + .skin-blue-light .main-header .navbar .nav > li > a:hover, .skin-blue-light .main-header .navbar .nav > li > a:active, .skin-blue-light .main-header .navbar .nav > li > a:focus, @@ -15,150 +17,186 @@ .skin-blue-light .main-header .navbar .nav .open > a:hover, .skin-blue-light .main-header .navbar .nav .open > a:focus, .skin-blue-light .main-header .navbar .nav > .active > a { - background: rgba(0, 0, 0, 0.1); - color: #f6f6f6; + background: rgba(0, 0, 0, 0.1); + color: #f6f6f6; } + .skin-blue-light .main-header .navbar .sidebar-toggle { - color: #ffffff; + color: #ffffff; } + .skin-blue-light .main-header .navbar .sidebar-toggle:hover { - color: #f6f6f6; - background: rgba(0, 0, 0, 0.1); + color: #f6f6f6; + background: rgba(0, 0, 0, 0.1); } + .skin-blue-light .main-header .navbar .sidebar-toggle { - color: #fff; -} -.skin-blue-light .main-header .navbar .sidebar-toggle:hover { - background-color: #367fa9; -} -@media (max-width: 767px) { - .skin-blue-light .main-header .navbar .dropdown-menu li.divider { - background-color: rgba(255, 255, 255, 0.1); - } - .skin-blue-light .main-header .navbar .dropdown-menu li a { color: #fff; - } - .skin-blue-light .main-header .navbar .dropdown-menu li a:hover { - background: #367fa9; - } } + +.skin-blue-light .main-header .navbar .sidebar-toggle:hover { + background-color: #367fa9; +} + +@media (max-width: 767px) { + .skin-blue-light .main-header .navbar .dropdown-menu li.divider { + background-color: rgba(255, 255, 255, 0.1); + } + + .skin-blue-light .main-header .navbar .dropdown-menu li a { + color: #fff; + } + + .skin-blue-light .main-header .navbar .dropdown-menu li a:hover { + background: #367fa9; + } +} + .skin-blue-light .main-header .logo { - background-color: #3c8dbc; - color: #ffffff; - border-bottom: 0 solid transparent; + background-color: #3c8dbc; + color: #ffffff; + border-bottom: 0 solid transparent; } + .skin-blue-light .main-header .logo:hover { - background-color: #3b8ab8; + background-color: #3b8ab8; } + .skin-blue-light .main-header li.user-header { - background-color: #3c8dbc; + background-color: #3c8dbc; } + .skin-blue-light .content-header { - background: transparent; + background: transparent; } + .skin-blue-light .wrapper, .skin-blue-light .main-sidebar, .skin-blue-light .left-side { - background-color: #f9fafc; + background-color: #f9fafc; } + .skin-blue-light .content-wrapper, .skin-blue-light .main-footer { - border-left: 1px solid #d2d6de; + border-left: 1px solid #d2d6de; } + .skin-blue-light .user-panel > .info, .skin-blue-light .user-panel > .info > a { - color: #444444; + color: #444444; } + .skin-blue-light .sidebar-menu > li { - -webkit-transition: border-left-color 0.3s ease; - -o-transition: border-left-color 0.3s ease; - transition: border-left-color 0.3s ease; + -webkit-transition: border-left-color 0.3s ease; + -o-transition: border-left-color 0.3s ease; + transition: border-left-color 0.3s ease; } + .skin-blue-light .sidebar-menu > li.header { - color: #848484; - background: #f9fafc; + color: #848484; + background: #f9fafc; } + .skin-blue-light .sidebar-menu > li > a { - border-left: 3px solid transparent; - font-weight: 600; + border-left: 3px solid transparent; + font-weight: 600; } + .skin-blue-light .sidebar-menu > li:hover > a, .skin-blue-light .sidebar-menu > li.active > a { - color: #000000; - background: #f4f4f5; + color: #000000; + background: #f4f4f5; } + .skin-blue-light .sidebar-menu > li.active { - border-left-color: #3c8dbc; + border-left-color: #3c8dbc; } + .skin-blue-light .sidebar-menu > li.active > a { - font-weight: 600; + font-weight: 600; } + .skin-blue-light .sidebar-menu > li > .treeview-menu { - background: #f4f4f5; + background: #f4f4f5; } + .skin-blue-light .sidebar a { - color: #444444; + color: #444444; } + .skin-blue-light .sidebar a:hover { - text-decoration: none; + text-decoration: none; } + .skin-blue-light .treeview-menu > li > a { - color: #777777; + color: #777777; } + .skin-blue-light .treeview-menu > li.active > a, .skin-blue-light .treeview-menu > li > a:hover { - color: #000000; + color: #000000; } + .skin-blue-light .treeview-menu > li.active > a { - font-weight: 600; + font-weight: 600; } + .skin-blue-light .sidebar-form { - border-radius: 3px; - border: 1px solid #d2d6de; - margin: 10px 10px; + border-radius: 3px; + border: 1px solid #d2d6de; + margin: 10px 10px; } + .skin-blue-light .sidebar-form input[type="text"], .skin-blue-light .sidebar-form .btn { - box-shadow: none; - background-color: #fff; - border: 1px solid transparent; - height: 35px; + box-shadow: none; + background-color: #fff; + border: 1px solid transparent; + height: 35px; } + .skin-blue-light .sidebar-form input[type="text"] { - color: #666; - border-top-left-radius: 2px; - border-top-right-radius: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 2px; + color: #666; + border-top-left-radius: 2px; + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 2px; } + .skin-blue-light .sidebar-form input[type="text"]:focus, .skin-blue-light .sidebar-form input[type="text"]:focus + .input-group-btn .btn { - background-color: #fff; - color: #666; + background-color: #fff; + color: #666; } + .skin-blue-light .sidebar-form input[type="text"]:focus + .input-group-btn .btn { - border-left-color: #fff; + border-left-color: #fff; } + .skin-blue-light .sidebar-form .btn { - color: #999; - border-top-left-radius: 0; - border-top-right-radius: 2px; - border-bottom-right-radius: 2px; - border-bottom-left-radius: 0; + color: #999; + border-top-left-radius: 0; + border-top-right-radius: 2px; + border-bottom-right-radius: 2px; + border-bottom-left-radius: 0; } + @media (min-width: 768px) { - .skin-blue-light.sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu { - border-left: 1px solid #d2d6de; - } + .skin-blue-light.sidebar-mini.sidebar-collapse .sidebar-menu > li > .treeview-menu { + border-left: 1px solid #d2d6de; + } } + .skin-blue-light .main-footer { - border-top-color: #d2d6de; + border-top-color: #d2d6de; } + .skin-blue.layout-top-nav .main-header > .logo { - background-color: #3c8dbc; - color: #ffffff; - border-bottom: 0 solid transparent; + background-color: #3c8dbc; + color: #ffffff; + border-bottom: 0 solid transparent; } + .skin-blue.layout-top-nav .main-header > .logo:hover { - background-color: #3b8ab8; + background-color: #3b8ab8; } diff --git a/public/lib/adminlte/js/app.js b/public/lib/adminlte/js/app.js index 31671e3ac5..44733a76e4 100755 --- a/public/lib/adminlte/js/app.js +++ b/public/lib/adminlte/js/app.js @@ -13,7 +13,7 @@ //Make sure jQuery has been loaded before app.js if (typeof jQuery === "undefined") { - throw new Error("AdminLTE requires jQuery"); + throw new Error("AdminLTE requires jQuery"); } /* AdminLTE @@ -33,101 +33,101 @@ $.AdminLTE = {}; * Modify these options to suit your implementation */ $.AdminLTE.options = { - //Add slimscroll to navbar menus - //This requires you to load the slimscroll plugin - //in every page before app.js - navbarMenuSlimscroll: true, - navbarMenuSlimscrollWidth: "3px", //The width of the scroll bar - navbarMenuHeight: "200px", //The height of the inner menu - //General animation speed for JS animated elements such as box collapse/expand and - //sidebar treeview slide up/down. This options accepts an integer as milliseconds, - //'fast', 'normal', or 'slow' - animationSpeed: 500, - //Sidebar push menu toggle button selector - sidebarToggleSelector: "[data-toggle='offcanvas']", - //Activate sidebar push menu - sidebarPushMenu: true, - //Activate sidebar slimscroll if the fixed layout is set (requires SlimScroll Plugin) - sidebarSlimScroll: true, - //Enable sidebar expand on hover effect for sidebar mini - //This option is forced to true if both the fixed layout and sidebar mini - //are used together - sidebarExpandOnHover: false, - //BoxRefresh Plugin - enableBoxRefresh: true, - //Bootstrap.js tooltip - enableBSToppltip: true, - BSTooltipSelector: "[data-toggle='tooltip']", - //Enable Fast Click. Fastclick.js creates a more - //native touch experience with touch devices. If you - //choose to enable the plugin, make sure you load the script - //before AdminLTE's app.js - enableFastclick: false, - //Control Sidebar Options - enableControlSidebar: true, - controlSidebarOptions: { - //Which button should trigger the open/close event - toggleBtnSelector: "[data-toggle='control-sidebar']", - //The sidebar selector - selector: ".control-sidebar", - //Enable slide over content - slide: true - }, - //Box Widget Plugin. Enable this plugin - //to allow boxes to be collapsed and/or removed - enableBoxWidget: true, - //Box Widget plugin options - boxWidgetOptions: { - boxWidgetIcons: { - //Collapse icon - collapse: 'fa-minus', - //Open icon - open: 'fa-plus', - //Remove icon - remove: 'fa-times' + //Add slimscroll to navbar menus + //This requires you to load the slimscroll plugin + //in every page before app.js + navbarMenuSlimscroll: true, + navbarMenuSlimscrollWidth: "3px", //The width of the scroll bar + navbarMenuHeight: "200px", //The height of the inner menu + //General animation speed for JS animated elements such as box collapse/expand and + //sidebar treeview slide up/down. This options accepts an integer as milliseconds, + //'fast', 'normal', or 'slow' + animationSpeed: 500, + //Sidebar push menu toggle button selector + sidebarToggleSelector: "[data-toggle='offcanvas']", + //Activate sidebar push menu + sidebarPushMenu: true, + //Activate sidebar slimscroll if the fixed layout is set (requires SlimScroll Plugin) + sidebarSlimScroll: true, + //Enable sidebar expand on hover effect for sidebar mini + //This option is forced to true if both the fixed layout and sidebar mini + //are used together + sidebarExpandOnHover: false, + //BoxRefresh Plugin + enableBoxRefresh: true, + //Bootstrap.js tooltip + enableBSToppltip: true, + BSTooltipSelector: "[data-toggle='tooltip']", + //Enable Fast Click. Fastclick.js creates a more + //native touch experience with touch devices. If you + //choose to enable the plugin, make sure you load the script + //before AdminLTE's app.js + enableFastclick: false, + //Control Sidebar Options + enableControlSidebar: true, + controlSidebarOptions: { + //Which button should trigger the open/close event + toggleBtnSelector: "[data-toggle='control-sidebar']", + //The sidebar selector + selector: ".control-sidebar", + //Enable slide over content + slide: true }, - boxWidgetSelectors: { - //Remove button selector - remove: '[data-widget="remove"]', - //Collapse button selector - collapse: '[data-widget="collapse"]' + //Box Widget Plugin. Enable this plugin + //to allow boxes to be collapsed and/or removed + enableBoxWidget: true, + //Box Widget plugin options + boxWidgetOptions: { + boxWidgetIcons: { + //Collapse icon + collapse: 'fa-minus', + //Open icon + open: 'fa-plus', + //Remove icon + remove: 'fa-times' + }, + boxWidgetSelectors: { + //Remove button selector + remove: '[data-widget="remove"]', + //Collapse button selector + collapse: '[data-widget="collapse"]' + } + }, + //Direct Chat plugin options + directChat: { + //Enable direct chat by default + enable: true, + //The button to open and close the chat contacts pane + contactToggleSelector: '[data-widget="chat-pane-toggle"]' + }, + //Define the set of colors to use globally around the website + colors: { + lightBlue: "#3c8dbc", + red: "#f56954", + green: "#00a65a", + aqua: "#00c0ef", + yellow: "#f39c12", + blue: "#0073b7", + navy: "#001F3F", + teal: "#39CCCC", + olive: "#3D9970", + lime: "#01FF70", + orange: "#FF851B", + fuchsia: "#F012BE", + purple: "#8E24AA", + maroon: "#D81B60", + black: "#222222", + gray: "#d2d6de" + }, + //The standard screen sizes that bootstrap uses. + //If you change these in the variables.less file, change + //them here too. + screenSizes: { + xs: 480, + sm: 768, + md: 992, + lg: 1200 } - }, - //Direct Chat plugin options - directChat: { - //Enable direct chat by default - enable: true, - //The button to open and close the chat contacts pane - contactToggleSelector: '[data-widget="chat-pane-toggle"]' - }, - //Define the set of colors to use globally around the website - colors: { - lightBlue: "#3c8dbc", - red: "#f56954", - green: "#00a65a", - aqua: "#00c0ef", - yellow: "#f39c12", - blue: "#0073b7", - navy: "#001F3F", - teal: "#39CCCC", - olive: "#3D9970", - lime: "#01FF70", - orange: "#FF851B", - fuchsia: "#F012BE", - purple: "#8E24AA", - maroon: "#D81B60", - black: "#222222", - gray: "#d2d6de" - }, - //The standard screen sizes that bootstrap uses. - //If you change these in the variables.less file, change - //them here too. - screenSizes: { - xs: 480, - sm: 768, - md: 992, - lg: 1200 - } }; /* ------------------ @@ -138,87 +138,87 @@ $.AdminLTE.options = { * options above. */ $(function () { - "use strict"; + "use strict"; - //Fix for IE page transitions - $("body").removeClass("hold-transition"); + //Fix for IE page transitions + $("body").removeClass("hold-transition"); - //Extend options if external options exist - if (typeof AdminLTEOptions !== "undefined") { - $.extend(true, - $.AdminLTE.options, - AdminLTEOptions); - } + //Extend options if external options exist + if (typeof AdminLTEOptions !== "undefined") { + $.extend(true, + $.AdminLTE.options, + AdminLTEOptions); + } - //Easy access to options - var o = $.AdminLTE.options; + //Easy access to options + var o = $.AdminLTE.options; - //Set up the object - _init(); + //Set up the object + _init(); - //Activate the layout maker - $.AdminLTE.layout.activate(); + //Activate the layout maker + $.AdminLTE.layout.activate(); - //Enable sidebar tree view controls - $.AdminLTE.tree('.sidebar'); + //Enable sidebar tree view controls + $.AdminLTE.tree('.sidebar'); - //Enable control sidebar - if (o.enableControlSidebar) { - $.AdminLTE.controlSidebar.activate(); - } + //Enable control sidebar + if (o.enableControlSidebar) { + $.AdminLTE.controlSidebar.activate(); + } - //Add slimscroll to navbar dropdown - if (o.navbarMenuSlimscroll && typeof $.fn.slimscroll != 'undefined') { - $(".navbar .menu").slimscroll({ - height: o.navbarMenuHeight, - alwaysVisible: false, - size: o.navbarMenuSlimscrollWidth - }).css("width", "100%"); - } + //Add slimscroll to navbar dropdown + if (o.navbarMenuSlimscroll && typeof $.fn.slimscroll != 'undefined') { + $(".navbar .menu").slimscroll({ + height: o.navbarMenuHeight, + alwaysVisible: false, + size: o.navbarMenuSlimscrollWidth + }).css("width", "100%"); + } - //Activate sidebar push menu - if (o.sidebarPushMenu) { - $.AdminLTE.pushMenu.activate(o.sidebarToggleSelector); - } + //Activate sidebar push menu + if (o.sidebarPushMenu) { + $.AdminLTE.pushMenu.activate(o.sidebarToggleSelector); + } + + //Activate Bootstrap tooltip + if (o.enableBSToppltip) { + $('body').tooltip({ + selector: o.BSTooltipSelector + }); + } + + //Activate box widget + if (o.enableBoxWidget) { + $.AdminLTE.boxWidget.activate(); + } + + //Activate fast click + if (o.enableFastclick && typeof FastClick != 'undefined') { + FastClick.attach(document.body); + } + + //Activate direct chat widget + if (o.directChat.enable) { + $(document).on('click', o.directChat.contactToggleSelector, function () { + var box = $(this).parents('.direct-chat').first(); + box.toggleClass('direct-chat-contacts-open'); + }); + } + + /* + * INITIALIZE BUTTON TOGGLE + * ------------------------ + */ + $('.btn-group[data-toggle="btn-toggle"]').each(function () { + var group = $(this); + $(this).find(".btn").on('click', function (e) { + group.find(".btn.active").removeClass("active"); + $(this).addClass("active"); + e.preventDefault(); + }); - //Activate Bootstrap tooltip - if (o.enableBSToppltip) { - $('body').tooltip({ - selector: o.BSTooltipSelector }); - } - - //Activate box widget - if (o.enableBoxWidget) { - $.AdminLTE.boxWidget.activate(); - } - - //Activate fast click - if (o.enableFastclick && typeof FastClick != 'undefined') { - FastClick.attach(document.body); - } - - //Activate direct chat widget - if (o.directChat.enable) { - $(document).on('click', o.directChat.contactToggleSelector, function () { - var box = $(this).parents('.direct-chat').first(); - box.toggleClass('direct-chat-contacts-open'); - }); - } - - /* - * INITIALIZE BUTTON TOGGLE - * ------------------------ - */ - $('.btn-group[data-toggle="btn-toggle"]').each(function () { - var group = $(this); - $(this).find(".btn").on('click', function (e) { - group.find(".btn.active").removeClass("active"); - $(this).addClass("active"); - e.preventDefault(); - }); - - }); }); /* ---------------------------------- @@ -227,370 +227,370 @@ $(function () { * All AdminLTE functions are implemented below. */ function _init() { - 'use strict'; - /* Layout - * ====== - * Fixes the layout height in case min-height fails. - * - * @type Object - * @usage $.AdminLTE.layout.activate() - * $.AdminLTE.layout.fix() - * $.AdminLTE.layout.fixSidebar() - */ - $.AdminLTE.layout = { - activate: function () { - var _this = this; - _this.fix(); - _this.fixSidebar(); - $(window, ".wrapper").resize(function () { - _this.fix(); - _this.fixSidebar(); - }); - }, - fix: function () { - //Get window height and the wrapper height - var neg = $('.main-header').outerHeight() + $('.main-footer').outerHeight(); - var window_height = $(window).height(); - var sidebar_height = $(".sidebar").height(); - //Set the min-height of the content and sidebar based on the - //the height of the document. - if ($("body").hasClass("fixed")) { - $(".content-wrapper, .right-side").css('min-height', window_height - $('.main-footer').outerHeight()); - } else { - var postSetWidth; - if (window_height >= sidebar_height) { - $(".content-wrapper, .right-side").css('min-height', window_height - neg); - postSetWidth = window_height - neg; - } else { - $(".content-wrapper, .right-side").css('min-height', sidebar_height); - postSetWidth = sidebar_height; + 'use strict'; + /* Layout + * ====== + * Fixes the layout height in case min-height fails. + * + * @type Object + * @usage $.AdminLTE.layout.activate() + * $.AdminLTE.layout.fix() + * $.AdminLTE.layout.fixSidebar() + */ + $.AdminLTE.layout = { + activate: function () { + var _this = this; + _this.fix(); + _this.fixSidebar(); + $(window, ".wrapper").resize(function () { + _this.fix(); + _this.fixSidebar(); + }); + }, + fix: function () { + //Get window height and the wrapper height + var neg = $('.main-header').outerHeight() + $('.main-footer').outerHeight(); + var window_height = $(window).height(); + var sidebar_height = $(".sidebar").height(); + //Set the min-height of the content and sidebar based on the + //the height of the document. + if ($("body").hasClass("fixed")) { + $(".content-wrapper, .right-side").css('min-height', window_height - $('.main-footer').outerHeight()); + } else { + var postSetWidth; + if (window_height >= sidebar_height) { + $(".content-wrapper, .right-side").css('min-height', window_height - neg); + postSetWidth = window_height - neg; + } else { + $(".content-wrapper, .right-side").css('min-height', sidebar_height); + postSetWidth = sidebar_height; + } + + //Fix for the control sidebar height + var controlSidebar = $($.AdminLTE.options.controlSidebarOptions.selector); + if (typeof controlSidebar !== "undefined") { + if (controlSidebar.height() > postSetWidth) + $(".content-wrapper, .right-side").css('min-height', controlSidebar.height()); + } + + } + }, + fixSidebar: function () { + //Make sure the body tag has the .fixed class + if (!$("body").hasClass("fixed")) { + if (typeof $.fn.slimScroll != 'undefined') { + $(".sidebar").slimScroll({destroy: true}).height("auto"); + } + return; + } else if (typeof $.fn.slimScroll == 'undefined' && window.console) { + window.console.error("Error: the fixed layout requires the slimscroll plugin!"); + } + //Enable slimscroll for fixed layout + if ($.AdminLTE.options.sidebarSlimScroll) { + if (typeof $.fn.slimScroll != 'undefined') { + //Destroy if it exists + $(".sidebar").slimScroll({destroy: true}).height("auto"); + //Add slimscroll + $(".sidebar").slimscroll({ + height: ($(window).height() - $(".main-header").height()) + "px", + color: "rgba(0,0,0,0.2)", + size: "3px" + }); + } + } } + }; - //Fix for the control sidebar height - var controlSidebar = $($.AdminLTE.options.controlSidebarOptions.selector); - if (typeof controlSidebar !== "undefined") { - if (controlSidebar.height() > postSetWidth) - $(".content-wrapper, .right-side").css('min-height', controlSidebar.height()); + /* PushMenu() + * ========== + * Adds the push menu functionality to the sidebar. + * + * @type Function + * @usage: $.AdminLTE.pushMenu("[data-toggle='offcanvas']") + */ + $.AdminLTE.pushMenu = { + activate: function (toggleBtn) { + //Get the screen sizes + var screenSizes = $.AdminLTE.options.screenSizes; + + //Enable sidebar toggle + $(document).on('click', toggleBtn, function (e) { + e.preventDefault(); + + //Enable sidebar push menu + if ($(window).width() > (screenSizes.sm - 1)) { + if ($("body").hasClass('sidebar-collapse')) { + $("body").removeClass('sidebar-collapse').trigger('expanded.pushMenu'); + } else { + $("body").addClass('sidebar-collapse').trigger('collapsed.pushMenu'); + } + } + //Handle sidebar push menu for small screens + else { + if ($("body").hasClass('sidebar-open')) { + $("body").removeClass('sidebar-open').removeClass('sidebar-collapse').trigger('collapsed.pushMenu'); + } else { + $("body").addClass('sidebar-open').trigger('expanded.pushMenu'); + } + } + }); + + $(".content-wrapper").click(function () { + //Enable hide menu when clicking on the content-wrapper on small screens + if ($(window).width() <= (screenSizes.sm - 1) && $("body").hasClass("sidebar-open")) { + $("body").removeClass('sidebar-open'); + } + }); + + //Enable expand on hover for sidebar mini + if ($.AdminLTE.options.sidebarExpandOnHover + || ($('body').hasClass('fixed') + && $('body').hasClass('sidebar-mini'))) { + this.expandOnHover(); + } + }, + expandOnHover: function () { + var _this = this; + var screenWidth = $.AdminLTE.options.screenSizes.sm - 1; + //Expand sidebar on hover + $('.main-sidebar').hover(function () { + if ($('body').hasClass('sidebar-mini') + && $("body").hasClass('sidebar-collapse') + && $(window).width() > screenWidth) { + _this.expand(); + } + }, function () { + if ($('body').hasClass('sidebar-mini') + && $('body').hasClass('sidebar-expanded-on-hover') + && $(window).width() > screenWidth) { + _this.collapse(); + } + }); + }, + expand: function () { + $("body").removeClass('sidebar-collapse').addClass('sidebar-expanded-on-hover'); + }, + collapse: function () { + if ($('body').hasClass('sidebar-expanded-on-hover')) { + $('body').removeClass('sidebar-expanded-on-hover').addClass('sidebar-collapse'); + } } + }; - } - }, - fixSidebar: function () { - //Make sure the body tag has the .fixed class - if (!$("body").hasClass("fixed")) { - if (typeof $.fn.slimScroll != 'undefined') { - $(".sidebar").slimScroll({destroy: true}).height("auto"); + /* Tree() + * ====== + * Converts the sidebar into a multilevel + * tree view menu. + * + * @type Function + * @Usage: $.AdminLTE.tree('.sidebar') + */ + $.AdminLTE.tree = function (menu) { + var _this = this; + var animationSpeed = $.AdminLTE.options.animationSpeed; + $(document).off('click', menu + ' li a') + .on('click', menu + ' li a', function (e) { + //Get the clicked link and the next element + var $this = $(this); + var checkElement = $this.next(); + + //Check if the next element is a menu and is visible + if ((checkElement.is('.treeview-menu')) && (checkElement.is(':visible')) && (!$('body').hasClass('sidebar-collapse'))) { + //Close the menu + checkElement.slideUp(animationSpeed, function () { + checkElement.removeClass('menu-open'); + //Fix the layout in case the sidebar stretches over the height of the window + //_this.layout.fix(); + }); + checkElement.parent("li").removeClass("active"); + } + //If the menu is not visible + else if ((checkElement.is('.treeview-menu')) && (!checkElement.is(':visible'))) { + //Get the parent menu + var parent = $this.parents('ul').first(); + //Close all open menus within the parent + var ul = parent.find('ul:visible').slideUp(animationSpeed); + //Remove the menu-open class from the parent + ul.removeClass('menu-open'); + //Get the parent li + var parent_li = $this.parent("li"); + + //Open the target menu and add the menu-open class + checkElement.slideDown(animationSpeed, function () { + //Add the class active to the parent li + checkElement.addClass('menu-open'); + parent.find('li.active').removeClass('active'); + parent_li.addClass('active'); + //Fix the layout in case the sidebar stretches over the height of the window + _this.layout.fix(); + }); + } + //if this isn't a link, prevent the page from being redirected + if (checkElement.is('.treeview-menu')) { + e.preventDefault(); + } + }); + }; + + /* ControlSidebar + * ============== + * Adds functionality to the right sidebar + * + * @type Object + * @usage $.AdminLTE.controlSidebar.activate(options) + */ + $.AdminLTE.controlSidebar = { + //instantiate the object + activate: function () { + //Get the object + var _this = this; + //Update options + var o = $.AdminLTE.options.controlSidebarOptions; + //Get the sidebar + var sidebar = $(o.selector); + //The toggle button + var btn = $(o.toggleBtnSelector); + + //Listen to the click event + btn.on('click', function (e) { + e.preventDefault(); + //If the sidebar is not open + if (!sidebar.hasClass('control-sidebar-open') + && !$('body').hasClass('control-sidebar-open')) { + //Open the sidebar + _this.open(sidebar, o.slide); + } else { + _this.close(sidebar, o.slide); + } + }); + + //If the body has a boxed layout, fix the sidebar bg position + var bg = $(".control-sidebar-bg"); + _this._fix(bg); + + //If the body has a fixed layout, make the control sidebar fixed + if ($('body').hasClass('fixed')) { + _this._fixForFixed(sidebar); + } else { + //If the content height is less than the sidebar's height, force max height + if ($('.content-wrapper, .right-side').height() < sidebar.height()) { + _this._fixForContent(sidebar); + } + } + }, + //Open the control sidebar + open: function (sidebar, slide) { + //Slide over content + if (slide) { + sidebar.addClass('control-sidebar-open'); + } else { + //Push the content by adding the open class to the body instead + //of the sidebar itself + $('body').addClass('control-sidebar-open'); + } + }, + //Close the control sidebar + close: function (sidebar, slide) { + if (slide) { + sidebar.removeClass('control-sidebar-open'); + } else { + $('body').removeClass('control-sidebar-open'); + } + }, + _fix: function (sidebar) { + var _this = this; + if ($("body").hasClass('layout-boxed')) { + sidebar.css('position', 'absolute'); + sidebar.height($(".wrapper").height()); + if (_this.hasBindedResize) { + return; + } + $(window).resize(function () { + _this._fix(sidebar); + }); + _this.hasBindedResize = true; + } else { + sidebar.css({ + 'position': 'fixed', + 'height': 'auto' + }); + } + }, + _fixForFixed: function (sidebar) { + sidebar.css({ + 'position': 'fixed', + 'max-height': '100%', + 'overflow': 'auto', + 'padding-bottom': '50px' + }); + }, + _fixForContent: function (sidebar) { + $(".content-wrapper, .right-side").css('min-height', sidebar.height()); } - return; - } else if (typeof $.fn.slimScroll == 'undefined' && window.console) { - window.console.error("Error: the fixed layout requires the slimscroll plugin!"); - } - //Enable slimscroll for fixed layout - if ($.AdminLTE.options.sidebarSlimScroll) { - if (typeof $.fn.slimScroll != 'undefined') { - //Destroy if it exists - $(".sidebar").slimScroll({destroy: true}).height("auto"); - //Add slimscroll - $(".sidebar").slimscroll({ - height: ($(window).height() - $(".main-header").height()) + "px", - color: "rgba(0,0,0,0.2)", - size: "3px" - }); + }; + + /* BoxWidget + * ========= + * BoxWidget is a plugin to handle collapsing and + * removing boxes from the screen. + * + * @type Object + * @usage $.AdminLTE.boxWidget.activate() + * Set all your options in the main $.AdminLTE.options object + */ + $.AdminLTE.boxWidget = { + selectors: $.AdminLTE.options.boxWidgetOptions.boxWidgetSelectors, + icons: $.AdminLTE.options.boxWidgetOptions.boxWidgetIcons, + animationSpeed: $.AdminLTE.options.animationSpeed, + activate: function (_box) { + var _this = this; + if (!_box) { + _box = document; // activate all boxes per default + } + //Listen for collapse event triggers + $(_box).on('click', _this.selectors.collapse, function (e) { + e.preventDefault(); + _this.collapse($(this)); + }); + + //Listen for remove event triggers + $(_box).on('click', _this.selectors.remove, function (e) { + e.preventDefault(); + _this.remove($(this)); + }); + }, + collapse: function (element) { + var _this = this; + //Find the box parent + var box = element.parents(".box").first(); + //Find the body and the footer + var box_content = box.find("> .box-body, > .box-footer, > form >.box-body, > form > .box-footer"); + if (!box.hasClass("collapsed-box")) { + //Convert minus into plus + element.children(":first") + .removeClass(_this.icons.collapse) + .addClass(_this.icons.open); + //Hide the content + box_content.slideUp(_this.animationSpeed, function () { + box.addClass("collapsed-box"); + }); + } else { + //Convert plus into minus + element.children(":first") + .removeClass(_this.icons.open) + .addClass(_this.icons.collapse); + //Show the content + box_content.slideDown(_this.animationSpeed, function () { + box.removeClass("collapsed-box"); + }); + } + }, + remove: function (element) { + //Find the box parent + var box = element.parents(".box").first(); + box.slideUp(this.animationSpeed); } - } - } - }; - - /* PushMenu() - * ========== - * Adds the push menu functionality to the sidebar. - * - * @type Function - * @usage: $.AdminLTE.pushMenu("[data-toggle='offcanvas']") - */ - $.AdminLTE.pushMenu = { - activate: function (toggleBtn) { - //Get the screen sizes - var screenSizes = $.AdminLTE.options.screenSizes; - - //Enable sidebar toggle - $(document).on('click', toggleBtn, function (e) { - e.preventDefault(); - - //Enable sidebar push menu - if ($(window).width() > (screenSizes.sm - 1)) { - if ($("body").hasClass('sidebar-collapse')) { - $("body").removeClass('sidebar-collapse').trigger('expanded.pushMenu'); - } else { - $("body").addClass('sidebar-collapse').trigger('collapsed.pushMenu'); - } - } - //Handle sidebar push menu for small screens - else { - if ($("body").hasClass('sidebar-open')) { - $("body").removeClass('sidebar-open').removeClass('sidebar-collapse').trigger('collapsed.pushMenu'); - } else { - $("body").addClass('sidebar-open').trigger('expanded.pushMenu'); - } - } - }); - - $(".content-wrapper").click(function () { - //Enable hide menu when clicking on the content-wrapper on small screens - if ($(window).width() <= (screenSizes.sm - 1) && $("body").hasClass("sidebar-open")) { - $("body").removeClass('sidebar-open'); - } - }); - - //Enable expand on hover for sidebar mini - if ($.AdminLTE.options.sidebarExpandOnHover - || ($('body').hasClass('fixed') - && $('body').hasClass('sidebar-mini'))) { - this.expandOnHover(); - } - }, - expandOnHover: function () { - var _this = this; - var screenWidth = $.AdminLTE.options.screenSizes.sm - 1; - //Expand sidebar on hover - $('.main-sidebar').hover(function () { - if ($('body').hasClass('sidebar-mini') - && $("body").hasClass('sidebar-collapse') - && $(window).width() > screenWidth) { - _this.expand(); - } - }, function () { - if ($('body').hasClass('sidebar-mini') - && $('body').hasClass('sidebar-expanded-on-hover') - && $(window).width() > screenWidth) { - _this.collapse(); - } - }); - }, - expand: function () { - $("body").removeClass('sidebar-collapse').addClass('sidebar-expanded-on-hover'); - }, - collapse: function () { - if ($('body').hasClass('sidebar-expanded-on-hover')) { - $('body').removeClass('sidebar-expanded-on-hover').addClass('sidebar-collapse'); - } - } - }; - - /* Tree() - * ====== - * Converts the sidebar into a multilevel - * tree view menu. - * - * @type Function - * @Usage: $.AdminLTE.tree('.sidebar') - */ - $.AdminLTE.tree = function (menu) { - var _this = this; - var animationSpeed = $.AdminLTE.options.animationSpeed; - $(document).off('click', menu + ' li a') - .on('click', menu + ' li a', function (e) { - //Get the clicked link and the next element - var $this = $(this); - var checkElement = $this.next(); - - //Check if the next element is a menu and is visible - if ((checkElement.is('.treeview-menu')) && (checkElement.is(':visible')) && (!$('body').hasClass('sidebar-collapse'))) { - //Close the menu - checkElement.slideUp(animationSpeed, function () { - checkElement.removeClass('menu-open'); - //Fix the layout in case the sidebar stretches over the height of the window - //_this.layout.fix(); - }); - checkElement.parent("li").removeClass("active"); - } - //If the menu is not visible - else if ((checkElement.is('.treeview-menu')) && (!checkElement.is(':visible'))) { - //Get the parent menu - var parent = $this.parents('ul').first(); - //Close all open menus within the parent - var ul = parent.find('ul:visible').slideUp(animationSpeed); - //Remove the menu-open class from the parent - ul.removeClass('menu-open'); - //Get the parent li - var parent_li = $this.parent("li"); - - //Open the target menu and add the menu-open class - checkElement.slideDown(animationSpeed, function () { - //Add the class active to the parent li - checkElement.addClass('menu-open'); - parent.find('li.active').removeClass('active'); - parent_li.addClass('active'); - //Fix the layout in case the sidebar stretches over the height of the window - _this.layout.fix(); - }); - } - //if this isn't a link, prevent the page from being redirected - if (checkElement.is('.treeview-menu')) { - e.preventDefault(); - } - }); - }; - - /* ControlSidebar - * ============== - * Adds functionality to the right sidebar - * - * @type Object - * @usage $.AdminLTE.controlSidebar.activate(options) - */ - $.AdminLTE.controlSidebar = { - //instantiate the object - activate: function () { - //Get the object - var _this = this; - //Update options - var o = $.AdminLTE.options.controlSidebarOptions; - //Get the sidebar - var sidebar = $(o.selector); - //The toggle button - var btn = $(o.toggleBtnSelector); - - //Listen to the click event - btn.on('click', function (e) { - e.preventDefault(); - //If the sidebar is not open - if (!sidebar.hasClass('control-sidebar-open') - && !$('body').hasClass('control-sidebar-open')) { - //Open the sidebar - _this.open(sidebar, o.slide); - } else { - _this.close(sidebar, o.slide); - } - }); - - //If the body has a boxed layout, fix the sidebar bg position - var bg = $(".control-sidebar-bg"); - _this._fix(bg); - - //If the body has a fixed layout, make the control sidebar fixed - if ($('body').hasClass('fixed')) { - _this._fixForFixed(sidebar); - } else { - //If the content height is less than the sidebar's height, force max height - if ($('.content-wrapper, .right-side').height() < sidebar.height()) { - _this._fixForContent(sidebar); - } - } - }, - //Open the control sidebar - open: function (sidebar, slide) { - //Slide over content - if (slide) { - sidebar.addClass('control-sidebar-open'); - } else { - //Push the content by adding the open class to the body instead - //of the sidebar itself - $('body').addClass('control-sidebar-open'); - } - }, - //Close the control sidebar - close: function (sidebar, slide) { - if (slide) { - sidebar.removeClass('control-sidebar-open'); - } else { - $('body').removeClass('control-sidebar-open'); - } - }, - _fix: function (sidebar) { - var _this = this; - if ($("body").hasClass('layout-boxed')) { - sidebar.css('position', 'absolute'); - sidebar.height($(".wrapper").height()); - if (_this.hasBindedResize) { - return; - } - $(window).resize(function () { - _this._fix(sidebar); - }); - _this.hasBindedResize = true; - } else { - sidebar.css({ - 'position': 'fixed', - 'height': 'auto' - }); - } - }, - _fixForFixed: function (sidebar) { - sidebar.css({ - 'position': 'fixed', - 'max-height': '100%', - 'overflow': 'auto', - 'padding-bottom': '50px' - }); - }, - _fixForContent: function (sidebar) { - $(".content-wrapper, .right-side").css('min-height', sidebar.height()); - } - }; - - /* BoxWidget - * ========= - * BoxWidget is a plugin to handle collapsing and - * removing boxes from the screen. - * - * @type Object - * @usage $.AdminLTE.boxWidget.activate() - * Set all your options in the main $.AdminLTE.options object - */ - $.AdminLTE.boxWidget = { - selectors: $.AdminLTE.options.boxWidgetOptions.boxWidgetSelectors, - icons: $.AdminLTE.options.boxWidgetOptions.boxWidgetIcons, - animationSpeed: $.AdminLTE.options.animationSpeed, - activate: function (_box) { - var _this = this; - if (!_box) { - _box = document; // activate all boxes per default - } - //Listen for collapse event triggers - $(_box).on('click', _this.selectors.collapse, function (e) { - e.preventDefault(); - _this.collapse($(this)); - }); - - //Listen for remove event triggers - $(_box).on('click', _this.selectors.remove, function (e) { - e.preventDefault(); - _this.remove($(this)); - }); - }, - collapse: function (element) { - var _this = this; - //Find the box parent - var box = element.parents(".box").first(); - //Find the body and the footer - var box_content = box.find("> .box-body, > .box-footer, > form >.box-body, > form > .box-footer"); - if (!box.hasClass("collapsed-box")) { - //Convert minus into plus - element.children(":first") - .removeClass(_this.icons.collapse) - .addClass(_this.icons.open); - //Hide the content - box_content.slideUp(_this.animationSpeed, function () { - box.addClass("collapsed-box"); - }); - } else { - //Convert plus into minus - element.children(":first") - .removeClass(_this.icons.open) - .addClass(_this.icons.collapse); - //Show the content - box_content.slideDown(_this.animationSpeed, function () { - box.removeClass("collapsed-box"); - }); - } - }, - remove: function (element) { - //Find the box parent - var box = element.parents(".box").first(); - box.slideUp(this.animationSpeed); - } - }; + }; } /* ------------------ @@ -610,70 +610,70 @@ function _init() { */ (function ($) { - "use strict"; + "use strict"; - $.fn.boxRefresh = function (options) { + $.fn.boxRefresh = function (options) { - // Render options - var settings = $.extend({ - //Refresh button selector - trigger: ".refresh-btn", - //File source to be loaded (e.g: ajax/src.php) - source: "", - //Callbacks - onLoadStart: function (box) { - return box; - }, //Right after the button has been clicked - onLoadDone: function (box) { - return box; - } //When the source has been loaded + // Render options + var settings = $.extend({ + //Refresh button selector + trigger: ".refresh-btn", + //File source to be loaded (e.g: ajax/src.php) + source: "", + //Callbacks + onLoadStart: function (box) { + return box; + }, //Right after the button has been clicked + onLoadDone: function (box) { + return box; + } //When the source has been loaded - }, options); + }, options); - //The overlay - var overlay = $('
    '); + //The overlay + var overlay = $('
    '); - return this.each(function () { - //if a source is specified - if (settings.source === "") { - if (window.console) { - window.console.log("Please specify a source first - boxRefresh()"); - } - return; - } - //the box - var box = $(this); - //the button - var rBtn = box.find(settings.trigger).first(); + return this.each(function () { + //if a source is specified + if (settings.source === "") { + if (window.console) { + window.console.log("Please specify a source first - boxRefresh()"); + } + return; + } + //the box + var box = $(this); + //the button + var rBtn = box.find(settings.trigger).first(); - //On trigger click - rBtn.on('click', function (e) { - e.preventDefault(); - //Add loading overlay - start(box); + //On trigger click + rBtn.on('click', function (e) { + e.preventDefault(); + //Add loading overlay + start(box); - //Perform ajax call - box.find(".box-body").load(settings.source, function () { - done(box); + //Perform ajax call + box.find(".box-body").load(settings.source, function () { + done(box); + }); + }); }); - }); - }); - function start(box) { - //Add overlay and loading img - box.append(overlay); + function start(box) { + //Add overlay and loading img + box.append(overlay); - settings.onLoadStart.call(box); - } + settings.onLoadStart.call(box); + } - function done(box) { - //Remove overlay and loading img - box.find(overlay).remove(); + function done(box) { + //Remove overlay and loading img + box.find(overlay).remove(); - settings.onLoadDone.call(box); - } + settings.onLoadDone.call(box); + } - }; + }; })(jQuery); @@ -690,21 +690,21 @@ function _init() { */ (function ($) { - 'use strict'; + 'use strict'; - $.fn.activateBox = function () { - $.AdminLTE.boxWidget.activate(this); - }; + $.fn.activateBox = function () { + $.AdminLTE.boxWidget.activate(this); + }; - $.fn.toggleBox = function () { - var button = $($.AdminLTE.boxWidget.selectors.collapse, this); - $.AdminLTE.boxWidget.collapse(button); - }; + $.fn.toggleBox = function () { + var button = $($.AdminLTE.boxWidget.selectors.collapse, this); + $.AdminLTE.boxWidget.collapse(button); + }; - $.fn.removeBox = function () { - var button = $($.AdminLTE.boxWidget.selectors.remove, this); - $.AdminLTE.boxWidget.remove(button); - }; + $.fn.removeBox = function () { + var button = $($.AdminLTE.boxWidget.selectors.remove, this); + $.AdminLTE.boxWidget.remove(button); + }; })(jQuery); @@ -718,46 +718,46 @@ function _init() { */ (function ($) { - 'use strict'; + 'use strict'; - $.fn.todolist = function (options) { - // Render options - var settings = $.extend({ - //When the user checks the input - onCheck: function (ele) { - return ele; - }, - //When the user unchecks the input - onUncheck: function (ele) { - return ele; - } - }, options); + $.fn.todolist = function (options) { + // Render options + var settings = $.extend({ + //When the user checks the input + onCheck: function (ele) { + return ele; + }, + //When the user unchecks the input + onUncheck: function (ele) { + return ele; + } + }, options); - return this.each(function () { + return this.each(function () { - if (typeof $.fn.iCheck != 'undefined') { - $('input', this).on('ifChecked', function () { - var ele = $(this).parents("li").first(); - ele.toggleClass("done"); - settings.onCheck.call(ele); + if (typeof $.fn.iCheck != 'undefined') { + $('input', this).on('ifChecked', function () { + var ele = $(this).parents("li").first(); + ele.toggleClass("done"); + settings.onCheck.call(ele); + }); + + $('input', this).on('ifUnchecked', function () { + var ele = $(this).parents("li").first(); + ele.toggleClass("done"); + settings.onUncheck.call(ele); + }); + } else { + $('input', this).on('change', function () { + var ele = $(this).parents("li").first(); + ele.toggleClass("done"); + if ($('input', ele).is(":checked")) { + settings.onCheck.call(ele); + } else { + settings.onUncheck.call(ele); + } + }); + } }); - - $('input', this).on('ifUnchecked', function () { - var ele = $(this).parents("li").first(); - ele.toggleClass("done"); - settings.onUncheck.call(ele); - }); - } else { - $('input', this).on('change', function () { - var ele = $(this).parents("li").first(); - ele.toggleClass("done"); - if ($('input', ele).is(":checked")) { - settings.onCheck.call(ele); - } else { - settings.onUncheck.call(ele); - } - }); - } - }); - }; + }; }(jQuery)); diff --git a/resources/views/accounts/edit.twig b/resources/views/accounts/edit.twig index e9ce4d5516..461a4402c7 100644 --- a/resources/views/accounts/edit.twig +++ b/resources/views/accounts/edit.twig @@ -87,7 +87,7 @@ diff --git a/resources/views/auth/register.twig b/resources/views/auth/register.twig index b8621e4395..cbe4fe03b0 100644 --- a/resources/views/auth/register.twig +++ b/resources/views/auth/register.twig @@ -76,8 +76,10 @@

    But I thought SHA1 was broken?

    - Yes, but not in this context. As you can read on the website detailing how they broke SHA1, it is now - slightly easier to find a "collision": another string that results in the same SHA1-hash. It now only takes 10,000 years using a single-GPU machine. + Yes, but not in this context. As you can read on the website detailing how they broke SHA1, it is + now + slightly easier to find a "collision": another string that results in the same SHA1-hash. It now only takes 10,000 years using a + single-GPU machine.

    This collision would not be equal to your password, nor would it be useful on (a site like) Firefly III. This application diff --git a/resources/views/budgets/show.twig b/resources/views/budgets/show.twig index df1ee67fec..39dfd3b936 100644 --- a/resources/views/budgets/show.twig +++ b/resources/views/budgets/show.twig @@ -156,14 +156,14 @@ var budgetID = {{ budget.id }}; var budgetLimitID = 0; {% if budgetLimit.id %} - budgetLimitID = {{ budgetLimit.id }}; - var budgetChartUri = '{{ route('chart.budget.budget-limit', [budget.id, budgetLimit.id] ) }}'; + budgetLimitID = {{ budgetLimit.id }}; + var budgetChartUri = '{{ route('chart.budget.budget-limit', [budget.id, budgetLimit.id] ) }}'; - var expenseCategoryUri = '{{ route('chart.budget.expense-category', [budget.id, budgetLimit.id]) }}'; - var expenseAssetUri = '{{ route('chart.budget.expense-asset', [budget.id, budgetLimit.id]) }}'; - var expenseExpenseUri = '{{ route('chart.budget.expense-expense', [budget.id, budgetLimit.id]) }}'; + var expenseCategoryUri = '{{ route('chart.budget.expense-category', [budget.id, budgetLimit.id]) }}'; + var expenseAssetUri = '{{ route('chart.budget.expense-asset', [budget.id, budgetLimit.id]) }}'; + var expenseExpenseUri = '{{ route('chart.budget.expense-expense', [budget.id, budgetLimit.id]) }}'; {% else %} - var budgetChartUri = '{{ route('chart.budget.budget', [budget.id] ) }}'; + var budgetChartUri = '{{ route('chart.budget.budget', [budget.id] ) }}'; var expenseCategoryUri = '{{ route('chart.budget.expense-category', [budget.id]) }}'; var expenseAssetUri = '{{ route('chart.budget.expense-asset', [budget.id]) }}'; diff --git a/resources/views/layout/default.twig b/resources/views/layout/default.twig index 2041115259..ca3c255c10 100644 --- a/resources/views/layout/default.twig +++ b/resources/views/layout/default.twig @@ -168,7 +168,8 @@

    - +
    diff --git a/resources/views/transactions/mass/edit.twig b/resources/views/transactions/mass/edit.twig index a8bab41a7d..aba6f9687f 100644 --- a/resources/views/transactions/mass/edit.twig +++ b/resources/views/transactions/mass/edit.twig @@ -50,7 +50,8 @@ {{ journal.currency_symbol }} - + {% if journal.foreign_amount %} {# insert foreign data #} diff --git a/resources/views/transactions/show.twig b/resources/views/transactions/show.twig index 5fb3fee0c3..b390b7002d 100644 --- a/resources/views/transactions/show.twig +++ b/resources/views/transactions/show.twig @@ -244,12 +244,12 @@

    {% endif %} -

    - - - {{ ('clone_'~journal.transactionType.type|lower)|_ }} - -

    +

    + + + {{ ('clone_'~journal.transactionType.type|lower)|_ }} + +

    diff --git a/tests/Feature/Controllers/Chart/BudgetControllerTest.php b/tests/Feature/Controllers/Chart/BudgetControllerTest.php index e6571a9ad8..17d7d7a0b5 100644 --- a/tests/Feature/Controllers/Chart/BudgetControllerTest.php +++ b/tests/Feature/Controllers/Chart/BudgetControllerTest.php @@ -130,9 +130,9 @@ class BudgetControllerTest extends TestCase */ public function testExpenseCategory(string $range) { - $generator = $this->mock(GeneratorInterface::class); - $collector = $this->mock(JournalCollectorInterface::class); - $catRepos = $this->mock(CategoryRepositoryInterface::class); + $generator = $this->mock(GeneratorInterface::class); + $collector = $this->mock(JournalCollectorInterface::class); + $catRepos = $this->mock(CategoryRepositoryInterface::class); $transactions = factory(Transaction::class, 10)->make(); $categories = factory(Category::class, 10)->make(); diff --git a/tests/Feature/Controllers/NewUserControllerTest.php b/tests/Feature/Controllers/NewUserControllerTest.php index 34c5983a08..a438438945 100644 --- a/tests/Feature/Controllers/NewUserControllerTest.php +++ b/tests/Feature/Controllers/NewUserControllerTest.php @@ -77,9 +77,9 @@ class NewUserControllerTest extends TestCase $data = [ - 'bank_name' => 'New bank', - 'savings_balance' => '1000', - 'bank_balance' => '100', + 'bank_name' => 'New bank', + 'savings_balance' => '1000', + 'bank_balance' => '100', ]; $this->be($this->emptyUser()); $response = $this->post(route('new-user.submit'), $data); diff --git a/tests/Feature/Controllers/Transaction/SingleControllerTest.php b/tests/Feature/Controllers/Transaction/SingleControllerTest.php index 758062169a..62e87a7a36 100644 --- a/tests/Feature/Controllers/Transaction/SingleControllerTest.php +++ b/tests/Feature/Controllers/Transaction/SingleControllerTest.php @@ -278,7 +278,7 @@ class SingleControllerTest extends TestCase public function testStoreSuccess() { $this->markTestIncomplete('Mockery cannot yet handle PHP7.1 null argument method things.'); - + // mock results: $repository = $this->mock(JournalRepositoryInterface::class); $journal = new TransactionJournal(); @@ -295,7 +295,6 @@ class SingleControllerTest extends TestCase $messages->add('attachments', 'Fake error'); - // mock attachment helper, trigger an error AND and info thing. $attachmentRepo = $this->mock(AttachmentHelperInterface::class); $attachmentRepo->shouldReceive('saveAttachmentsForModel');

    {{ 'account'|_ }}