From c8ac0bacade77db8713ecd57541d6c1605f237ec Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Thu, 11 Apr 2024 12:21:41 +0200
Subject: [PATCH 01/85] init variable
---
views/bootstrap/class.Bootstrap.php | 1 +
views/bootstrap4/class.Bootstrap4.php | 1 +
2 files changed, 2 insertions(+)
diff --git a/views/bootstrap/class.Bootstrap.php b/views/bootstrap/class.Bootstrap.php
index 5ed68d6c3..188111924 100644
--- a/views/bootstrap/class.Bootstrap.php
+++ b/views/bootstrap/class.Bootstrap.php
@@ -2290,6 +2290,7 @@ $(document).ready(function() {
$orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
if($folderid && ($folder = $this->params['dms']->getFolder($folderid))) {
+ $path = null;
if(!$partialtree) {
$path = $folder->getPath();
/* Get the first folder (root folder) of path */
diff --git a/views/bootstrap4/class.Bootstrap4.php b/views/bootstrap4/class.Bootstrap4.php
index 54f7c6c41..a9cb5029c 100644
--- a/views/bootstrap4/class.Bootstrap4.php
+++ b/views/bootstrap4/class.Bootstrap4.php
@@ -2317,6 +2317,7 @@ $(document).ready(function() {
$orderdir = (isset($orderby[1]) ? ($orderby[1] == 'd' ? 'desc' : 'asc') : 'asc');
if($folderid && ($folder = $this->params['dms']->getFolder($folderid))) {
+ $path = null;
if(!$partialtree) {
$path = $folder->getPath();
/* Get the first folder (root folder) of path */
From 74e5be95c215829af72a1a2e8758ce00bdbcf7da Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Thu, 11 Apr 2024 12:37:02 +0200
Subject: [PATCH 02/85] log calling script
---
op/op.ReceiptDocument.php | 4 ++--
op/op.ReviseDocument.php | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/op/op.ReceiptDocument.php b/op/op.ReceiptDocument.php
index 3b7fbf0f1..538b19aca 100644
--- a/op/op.ReceiptDocument.php
+++ b/op/op.ReceiptDocument.php
@@ -100,6 +100,6 @@ if ($_POST["receiptType"] == "ind" || $_POST["receiptType"] == "grp") {
}
}
-header("Location:../out/out.ViewDocument.php?documentid=".$documentid."¤ttab=recipients");
+add_log_line("documentid=".$documentid."&version=".$version);
-?>
+header("Location:../out/out.ViewDocument.php?documentid=".$documentid."¤ttab=recipients");
diff --git a/op/op.ReviseDocument.php b/op/op.ReviseDocument.php
index d73ee2387..619885eac 100644
--- a/op/op.ReviseDocument.php
+++ b/op/op.ReviseDocument.php
@@ -115,6 +115,6 @@ if($notifier) {
$notifier->sendChangedDocumentStatusMail($latestContent, $user, $controller->oldstatus);
}
-header("Location:../out/out.ViewDocument.php?documentid=".$documentid."¤ttab=revision");
+add_log_line("documentid=".$documentid."&version=".$version);
-?>
+header("Location:../out/out.ViewDocument.php?documentid=".$documentid."¤ttab=revision");
From d6aa0e4f602aa60a6e4e6eb7249fc9c5731b028e Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Thu, 11 Apr 2024 12:44:57 +0200
Subject: [PATCH 03/85] improve log line
---
op/op.ApproveDocument.php | 4 +-
op/op.ReviewDocument.php | 124 +-------------------------------------
2 files changed, 2 insertions(+), 126 deletions(-)
diff --git a/op/op.ApproveDocument.php b/op/op.ApproveDocument.php
index 24e1cb1ef..67eb2d627 100644
--- a/op/op.ApproveDocument.php
+++ b/op/op.ApproveDocument.php
@@ -116,8 +116,6 @@ if(!$controller()) {
}
}
-add_log_line("?documentid=".$_POST['documentid']."&version=".$_POST['version']."&approvalType=".$_POST['approvalType']."&approvalStatus=".$_POST['approvalStatus']);
+add_log_line("?documentid=".$documentid."&version=".$version."&approvalType=".$_POST['approvalType']."&approvalStatus=".$_POST['approvalStatus']);
header("Location:../out/out.ViewDocument.php?documentid=".$documentid."¤ttab=revapp");
-
-?>
diff --git a/op/op.ReviewDocument.php b/op/op.ReviewDocument.php
index b313d62a1..5e5394e28 100644
--- a/op/op.ReviewDocument.php
+++ b/op/op.ReviewDocument.php
@@ -121,128 +121,6 @@ if(!$controller()) {
}
}
-if(0) {
-if ($_POST["reviewType"] == "ind") {
-
- $comment = $_POST["comment"];
- if($_FILES["reviewfile"]["tmp_name"])
- $file = $_FILES["reviewfile"]["tmp_name"];
- else
- $file = '';
- $reviewLogID = $latestContent->setReviewByInd($user, $user, $_POST["reviewStatus"], $comment, $file);
- if($reviewLogID === false || 0 > $reviewLogID) {
- UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("review_update_failed"));
- }
- else {
- // Send an email notification to the document updater.
- if($notifier) {
- $reviewlog = $latestContent->getReviewLog();
- $notifier->sendSubmittedReviewMail($latestContent, $user, $reviewlog ? $reviewlog[0] : false);
- }
- }
-}
-else if ($_POST["reviewType"] == "grp") {
- $comment = $_POST["comment"];
- $group = $dms->getGroup($_POST['reviewGroup']);
- if($_FILES["reviewfile"]["tmp_name"])
- $file = $_FILES["reviewfile"]["tmp_name"];
- else
- $file = '';
- $reviewLogID = $latestContent->setReviewByGrp($group, $user, $_POST["reviewStatus"], $comment, $file);
- if($reviewLogID === false || 0 > $reviewLogID) {
- UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("review_update_failed"));
- }
- else {
- // Send an email notification to the document updater.
- if($notifier) {
- $reviewlog = $latestContent->getReviewLog();
- $notifier->sendSubmittedReviewMail($latestContent, $user, $reviewlog ? $reviewlog[0] : false);
- }
- }
-}
-}
-
-//
-// Check to see if the overall status for the document version needs to be
-// updated.
-//
-
-if(0) {
-$overallStatus = $content->getStatus();
-if ($_POST["reviewStatus"]==-1){
- if($content->setStatus(S_REJECTED,$comment,$user)) {
- // Send notification to subscribers.
- if($notifier) {
- $notifier->sendChangedDocumentStatusMail($content, $user, $overallStatus["status"]);
- }
- }
-
-}else{
-
- $docReviewStatus = $content->getReviewStatus();
- if (is_bool($docReviewStatus) && !$docReviewStatus) {
- UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("cannot_retrieve_review_snapshot"));
- }
- $reviewCT = 0;
- $reviewTotal = 0;
- foreach ($docReviewStatus as $drstat) {
- if ($drstat["status"] == 1) {
- $reviewCT++;
- }
- if ($drstat["status"] != -2) {
- $reviewTotal++;
- }
- }
- // If all reviews have been received and there are no rejections, retrieve a
- // count of the approvals required for this document.
- if ($reviewCT == $reviewTotal) {
- $docApprovalStatus = $content->getApprovalStatus();
- if (is_bool($docApprovalStatus) && !$docApprovalStatus) {
- UI::exitError(getMLText("document_title", array("documentname" => $document->getName())),getMLText("cannot_retrieve_approval_snapshot"));
- }
- $approvalCT = 0;
- $approvalTotal = 0;
- foreach ($docApprovalStatus as $dastat) {
- if ($dastat["status"] == 1) {
- $approvalCT++;
- }
- if ($dastat["status"] != -2) {
- $approvalTotal++;
- }
- }
- // If the approvals received is less than the approvals total, then
- // change status to pending approval.
- if ($approvalCT<$approvalTotal) {
- $newStatus=S_DRAFT_APP;
- }
- else {
- // Otherwise, change the status to released.
- $newStatus=S_RELEASED;
- }
- if ($content->setStatus($newStatus, getMLText("automatic_status_update"), $user)) {
- // Send notification to subscribers.
- if($notifier) {
- $notifier->sendChangedDocumentStatusMail($content, $user, $overallStatus["status"]);
-
- // Notify approvers, if necessary.
- if ($newStatus == S_DRAFT_APP) {
- $requestUser = $document->getOwner();
- $notifier->sendApprovalRequestMail($content, $user);
- }
- }
-
- if(isset($GLOBALS['SEEDDMS_HOOKS']['reviewDocument'])) {
- foreach($GLOBALS['SEEDDMS_HOOKS']['reviewDocument'] as $hookObj) {
- if (method_exists($hookObj, 'postReviewDocument')) {
- $hookObj->postReviewDocument(null, $content, $newStatus);
- }
- }
- }
- }
- }
-}
-}
+add_log_line("documentid=".$documentid."&version=".$version."&reviewType=".$_POST['reviewType']."&reviewStatus=".$_POST['reviewStatus']);
header("Location:../out/out.ViewDocument.php?documentid=".$documentid."¤ttab=revapp");
-
-?>
From d74b9ed9de57d4d2b225a9bbbbdfaaf820bf8c4e Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Sat, 13 Apr 2024 09:24:27 +0200
Subject: [PATCH 04/85] fix sending mails when document/folder was moved
---
inc/inc.ClassNotificationService.php | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/inc/inc.ClassNotificationService.php b/inc/inc.ClassNotificationService.php
index ba6042358..93de68c01 100644
--- a/inc/inc.ClassNotificationService.php
+++ b/inc/inc.ClassNotificationService.php
@@ -912,7 +912,7 @@ class SeedDMS_NotificationService {
// if user is not owner and owner not already in list of notifiers, then
// send notification to owner
if ($user->getID() != $document->getOwner()->getID() &&
- false === SeedDMS_Core_DMS::inList($document->getOwner(), $notifyList['users'])) {
+ false === SeedDMS_Core_DMS::inList($document->getOwner(), $nl['users'])) {
$this->toIndividual($user, $document->getOwner(), $subject, $message, $params, SeedDMS_NotificationService::RECV_OWNER);
}
} /* }}} */
@@ -946,7 +946,7 @@ class SeedDMS_NotificationService {
}
// if user is not owner send notification to owner
if ($user->getID() != $folder->getOwner()->getID() &&
- false === SeedDMS_Core_DMS::inList($folder->getOwner(), $notifyList['users'])) {
+ false === SeedDMS_Core_DMS::inList($folder->getOwner(), $nl['users'])) {
$this->toIndividual($user, $folder->getOwner(), $subject, $message, $params, SeedDMS_NotificationService::RECV_OWNER);
}
} /* }}} */
From f79c60e9279836a476f4a99dbc60c8837e3af815 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Sat, 13 Apr 2024 09:25:10 +0200
Subject: [PATCH 05/85] add changes for 5.1.34
---
CHANGELOG | 1 +
1 file changed, 1 insertion(+)
diff --git a/CHANGELOG b/CHANGELOG
index f8709ab7a..08b520c5d 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -17,6 +17,7 @@
- do not show full list of notifiers to none admins
- do not list document/folders in sequence selector if its number exceeds 50
- typeahead menu works with arrow keys again, wait 1 sec. before searching
+- fix sending notification mails when document/folder was moved
--------------------------------------------------------------------------------
Changes in version 5.1.33
From c9286b75a0318a600314db8fd05df98d745ab4e0 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Mon, 15 Apr 2024 11:54:23 +0200
Subject: [PATCH 06/85] show tasklist in menu even if there are no task
---
views/bootstrap/class.Tasks.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/views/bootstrap/class.Tasks.php b/views/bootstrap/class.Tasks.php
index 846466bd0..be2f9d18c 100644
--- a/views/bootstrap/class.Tasks.php
+++ b/views/bootstrap/class.Tasks.php
@@ -367,8 +367,8 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
$menuitems['tasks']['children']['divider'] = array('divider'=>true);
$menuitems['tasks']['children']['mydocuments'] = array('label'=>getMLText('my_documents'), 'link'=>$this->params['settings']->_httpRoot.'out/out.MyDocuments.php');
}
- self::showNavigationBar($menuitems, array('right'=>true));
}
+ self::showNavigationBar($menuitems, array('right'=>true));
} /* }}} */
/**
From c4115057013f3ce0d472f342f944921d9b93735a Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Mon, 15 Apr 2024 17:37:20 +0200
Subject: [PATCH 07/85] tasks and clipboard can be shown in main menu, even if
there are no tasks due or the clipboard is empty
---
CHANGELOG | 2 ++
inc/inc.ClassSettings.php | 8 ++++++++
op/op.Settings.php | 2 ++
views/bootstrap/class.Clipboard.php | 17 ++++++++++-------
views/bootstrap/class.Settings.php | 2 ++
views/bootstrap/class.Tasks.php | 5 +++--
6 files changed, 27 insertions(+), 9 deletions(-)
diff --git a/CHANGELOG b/CHANGELOG
index 08b520c5d..9ad0b69c8 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -18,6 +18,8 @@
- do not list document/folders in sequence selector if its number exceeds 50
- typeahead menu works with arrow keys again, wait 1 sec. before searching
- fix sending notification mails when document/folder was moved
+- tasks and clipboard can be shown in main menu, even if there are no tasks
+ due or the clipboard is empty
--------------------------------------------------------------------------------
Changes in version 5.1.33
diff --git a/inc/inc.ClassSettings.php b/inc/inc.ClassSettings.php
index b0fa9da5e..65ab8784c 100644
--- a/inc/inc.ClassSettings.php
+++ b/inc/inc.ClassSettings.php
@@ -253,8 +253,12 @@ class Settings { /* {{{ */
var $_enableExtensionImportFromRepository = true;
// enable/disable display of the clipboard
var $_enableClipboard = true;
+ // show always clipboard in main menu, even if empty
+ var $_alwaysShowClipboard = false;
// enable/disable list of tasks in main menu
var $_enableMenuTasks = true;
+ // show always tasks in main menu, even if none are due
+ var $_alwaysShowMenuTasks = true;
// enable/disable list of files in drop folder
var $_enableDropFolderList = false;
// enable/disable display of the session list
@@ -546,7 +550,9 @@ class Settings { /* {{{ */
$this->_enableUsersView = Settings::boolVal($tab["enableUsersView"]);
$this->_enableSessionList = Settings::boolVal($tab["enableSessionList"]);
$this->_enableClipboard = Settings::boolVal($tab["enableClipboard"]);
+ $this->_alwaysShowClipboard = Settings::boolVal($tab["alwaysShowClipboard"]);
$this->_enableMenuTasks = Settings::boolVal($tab["enableMenuTasks"]);
+ $this->_alwaysShowMenuTasks = Settings::boolVal($tab["alwaysShowMenuTasks"]);
$this->_enableDropFolderList = Settings::boolVal($tab["enableDropFolderList"]);
$this->_enableDropUpload = Settings::boolVal($tab["enableDropUpload"]);
$this->_enableMultiUpload = Settings::boolVal($tab["enableMultiUpload"]);
@@ -947,7 +953,9 @@ class Settings { /* {{{ */
$this->setXMLAttributValue($node, "enableUsersView", $this->_enableUsersView);
$this->setXMLAttributValue($node, "enableSessionList", $this->_enableSessionList);
$this->setXMLAttributValue($node, "enableClipboard", $this->_enableClipboard);
+ $this->setXMLAttributValue($node, "alwaysShowClipboard", $this->_alwaysShowClipboard);
$this->setXMLAttributValue($node, "enableMenuTasks", $this->_enableMenuTasks);
+ $this->setXMLAttributValue($node, "alwaysShowMenuTasks", $this->_alwaysShowMenuTasks);
$this->setXMLAttributValue($node, "enableDropFolderList", $this->_enableDropFolderList);
$this->setXMLAttributValue($node, "enableDropUpload", $this->_enableDropUpload);
$this->setXMLAttributValue($node, "enableMultiUpload", $this->_enableMultiUpload);
diff --git a/op/op.Settings.php b/op/op.Settings.php
index 1ac008924..5950ccc47 100644
--- a/op/op.Settings.php
+++ b/op/op.Settings.php
@@ -137,7 +137,9 @@ if ($action == "saveSettings")
setBoolValue("showSingleSearchHit");
setBoolValue("enableSessionList");
setBoolValue("enableClipboard");
+ setBoolValue("alwaysShowClipboard");
setBoolValue("enableMenuTasks");
+ setBoolValue("alwaysShowMenuTasks");
setBoolValue("enableDropFolderList");
setBoolValue("enableDropUpload");
setBoolValue("enableMultiUpload");
diff --git a/views/bootstrap/class.Clipboard.php b/views/bootstrap/class.Clipboard.php
index 3b75db496..cce60ab47 100644
--- a/views/bootstrap/class.Clipboard.php
+++ b/views/bootstrap/class.Clipboard.php
@@ -41,8 +41,9 @@ class SeedDMS_View_Clipboard extends SeedDMS_Theme_Style {
* @return string html code
*/
public function menuClipboard() { /* {{{ */
+ $settings = $this->params['settings'];
$clipboard = $this->params['session']->getClipboard();
- if (/*$this->params['user']->isGuest() ||*/ (count($clipboard['docs']) + count($clipboard['folders'])) == 0) {
+ if (empty($settings->_alwaysShowClipboard) && (count($clipboard['docs']) + count($clipboard['folders'])) == 0) {
return '';
}
@@ -58,13 +59,15 @@ class SeedDMS_View_Clipboard extends SeedDMS_Theme_Style {
if($document = $this->params['dms']->getDocument($docid))
$subitems[] = array('label'=>' '.$document->getName(), 'link'=>$this->params['settings']->_httpRoot."out/out.ViewDocument.php?documentid=".$document->getID(), 'class'=>"table-row-document droptarget", 'attributes'=>array(array('data-droptarget', "document_".$document->getID()), array('rel', "document_".$document->getID()), array('formtoken', createFormKey('')), array('data-name', htmlspecialchars($document->getName(), ENT_QUOTES))));
}
- $subitems[] = array('divider'=>true);
- if(isset($this->params['folder']) && $this->params['folder']->getAccessMode($this->params['user']) >= M_READWRITE) {
- $subitems[] = array('label'=>getMLText("move_clipboard"), 'link'=>$this->params['settings']->_httpRoot."op/op.MoveClipboard.php?targetid=".$this->params['folder']->getID()."&refferer=".urlencode($this->params['settings']->_httpRoot.'out/out.ViewFolder.php?folderid='.$this->params['folder']->getID()));
+ if((count($clipboard['docs']) + count($clipboard['folders'])) > 0) {
+ $subitems[] = array('divider'=>true);
+ if(isset($this->params['folder']) && $this->params['folder']->getAccessMode($this->params['user']) >= M_READWRITE) {
+ $subitems[] = array('label'=>getMLText("move_clipboard"), 'link'=>$this->params['settings']->_httpRoot."op/op.MoveClipboard.php?targetid=".$this->params['folder']->getID()."&refferer=".urlencode($this->params['settings']->_httpRoot.'out/out.ViewFolder.php?folderid='.$this->params['folder']->getID()));
+ }
+ $subitems[] = array('label'=>getMLText('clear_clipboard'), 'class'=>'ajax-click', 'attributes'=>array(array('data-href', $this->params['settings']->_httpRoot.'op/op.Ajax.php'), array('data-param1', 'command=clearclipboard')));
+ if($this->hasHook('clipboardMenuItems'))
+ $subitems = $this->callHook('clipboardMenuItems', $clipboard, $subitems);
}
- $subitems[] = array('label'=>getMLText('clear_clipboard'), 'class'=>'ajax-click', 'attributes'=>array(array('data-href', $this->params['settings']->_httpRoot.'op/op.Ajax.php'), array('data-param1', 'command=clearclipboard')));
- if($this->hasHook('clipboardMenuItems'))
- $subitems = $this->callHook('clipboardMenuItems', $clipboard, $subitems);
$menuitems['clipboard'] = array('label'=>getMLText('clipboard')." (".count($clipboard['folders'])."/". count($clipboard['docs']).")", 'children'=>$subitems);
self::showNavigationBar($menuitems, array('right'=>true));
} /* }}} */
diff --git a/views/bootstrap/class.Settings.php b/views/bootstrap/class.Settings.php
index 10e8b763d..708d8fdea 100644
--- a/views/bootstrap/class.Settings.php
+++ b/views/bootstrap/class.Settings.php
@@ -406,7 +406,9 @@ if(($kkk = $this->callHook('getFullSearchEngine')) && is_array($kkk))
showConfigOption('settings_suggestTerms', 'suggestTerms', array('title','comment', 'keywords', 'content'), true, true); ?>
showConfigText('settings_stopWordsFile', 'stopWordsFile'); ?>
showConfigCheckbox('settings_enableClipboard', 'enableClipboard'); ?>
+showConfigCheckbox('settings_alwaysShowClipboard', 'alwaysShowClipboard'); ?>
showConfigCheckbox('settings_enableMenuTasks', 'enableMenuTasks'); ?>
+showConfigCheckbox('settings_alwaysShowMenuTasks', 'alwaysShowMenuTasks'); ?>
showConfigCheckbox('settings_enableDropFolderList', 'enableDropFolderList'); ?>
showConfigCheckbox('settings_enableSessionList', 'enableSessionList'); ?>
showConfigCheckbox('settings_enableDropUpload', 'enableDropUpload'); ?>
diff --git a/views/bootstrap/class.Tasks.php b/views/bootstrap/class.Tasks.php
index ee111f4a3..05887b94c 100644
--- a/views/bootstrap/class.Tasks.php
+++ b/views/bootstrap/class.Tasks.php
@@ -146,6 +146,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
function menuTasks() { /* {{{ */
$dms = $this->params['dms'];
$user = $this->params['user'];
+ $settings = $this->params['settings'];
if(!$tasks = $this->__myTasks()) {
echo '';
@@ -167,7 +168,7 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
$menuitems['tasks'] = array('label'=>getMLText('tasks')." (".implode('/', $ct).")");
$menuitems['tasks']['children'] = [];
- if(!empty($tasks['review']) || !empty($tasks['approval']) || !empty($tasks['workflow'])) {
+ if(!empty($settings->_alwaysShowMenuTasks) || !empty($tasks['review']) || !empty($tasks['approval']) || !empty($tasks['workflow'])) {
if(!empty($tasks['review'])) {
$subitems = [];
foreach($tasks['review'] as $t) {
@@ -203,8 +204,8 @@ class SeedDMS_View_Tasks extends SeedDMS_Theme_Style {
}
$menuitems['tasks']['children']['divider'] = array('divider'=>true);
$menuitems['tasks']['children']['mydocuments'] = array('label'=>getMLText('my_documents'), 'link'=>$this->params['settings']->_httpRoot.'out/out.MyDocuments.php');
- }
self::showNavigationBar($menuitems, array('right'=>true));
+ }
} /* }}} */
/**
From c3bd028774e7fb9102f287489f6fc4d07bebf9ce Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 16 Apr 2024 06:31:24 +0200
Subject: [PATCH 08/85] add new phrases
---
languages/ar_EG/lang.inc | 4 ++++
languages/bg_BG/lang.inc | 4 ++++
languages/ca_ES/lang.inc | 4 ++++
languages/cs_CZ/lang.inc | 4 ++++
languages/de_DE/lang.inc | 14 +++++++++-----
languages/el_GR/lang.inc | 4 ++++
languages/en_GB/lang.inc | 6 +++++-
languages/es_ES/lang.inc | 4 ++++
languages/fr_FR/lang.inc | 4 ++++
languages/hr_HR/lang.inc | 4 ++++
languages/hu_HU/lang.inc | 4 ++++
languages/id_ID/lang.inc | 4 ++++
languages/it_IT/lang.inc | 4 ++++
languages/ko_KR/lang.inc | 4 ++++
languages/lo_LA/lang.inc | 4 ++++
languages/nb_NO/lang.inc | 4 ++++
languages/nl_NL/lang.inc | 4 ++++
languages/pl_PL/lang.inc | 4 ++++
languages/pt_BR/lang.inc | 4 ++++
languages/ro_RO/lang.inc | 4 ++++
languages/ru_RU/lang.inc | 4 ++++
languages/sk_SK/lang.inc | 4 ++++
languages/sv_SE/lang.inc | 4 ++++
languages/tr_TR/lang.inc | 4 ++++
languages/uk_UA/lang.inc | 4 ++++
languages/zh_CN/lang.inc | 4 ++++
languages/zh_TW/lang.inc | 4 ++++
27 files changed, 114 insertions(+), 6 deletions(-)
diff --git a/languages/ar_EG/lang.inc b/languages/ar_EG/lang.inc
index 5ff7dfd9e..1c741d916 100644
--- a/languages/ar_EG/lang.inc
+++ b/languages/ar_EG/lang.inc
@@ -1501,6 +1501,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => 'السماح بتغيير التطبيق في العملية',
'settings_allowReviewerOnly' => 'السماح بالمراجع فقط',
'settings_allowReviewerOnly_desc' => 'السماح بالمراجع فقط',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/bg_BG/lang.inc b/languages/bg_BG/lang.inc
index 961112f13..fd78e7449 100644
--- a/languages/bg_BG/lang.inc
+++ b/languages/bg_BG/lang.inc
@@ -1343,6 +1343,10 @@ $text = array(
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/ca_ES/lang.inc b/languages/ca_ES/lang.inc
index c33ee21b2..7c3404a68 100644
--- a/languages/ca_ES/lang.inc
+++ b/languages/ca_ES/lang.inc
@@ -1348,6 +1348,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/cs_CZ/lang.inc b/languages/cs_CZ/lang.inc
index 3939231a3..99f776ed5 100644
--- a/languages/cs_CZ/lang.inc
+++ b/languages/cs_CZ/lang.inc
@@ -1573,6 +1573,10 @@ Jméno: [username]
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => 'Nastavit pouze recenzenta',
'settings_allowReviewerOnly_desc' => 'Aktivujte, pokud má být nastaven pouze recenzent, ale žádný schvalovatel v tradičním režimu workflow.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/de_DE/lang.inc b/languages/de_DE/lang.inc
index 0fc4bd1ac..dc6ad1d2a 100644
--- a/languages/de_DE/lang.inc
+++ b/languages/de_DE/lang.inc
@@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
-// Translators: Admin (3356), dgrutsch (22)
+// Translators: Admin (3364), dgrutsch (22)
$text = array(
'2_factor_auth' => '2-Faktor Authentifizierung',
@@ -141,7 +141,7 @@ URL: [url]
',
'approval_request_email_subject' => '[sitename]: [name] - Aufforderung zur Freigabe',
'approval_status' => 'Freigabestatus',
'approval_submit_email' => '',
-'approval_submit_email_body' => 'Freigabe erteilt
+'approval_submit_email_body' => 'Freigabe ausgeführt
Dokument: [name]
Version: [version]
@@ -150,7 +150,7 @@ Status: [status]
Kommentar: [comment]
Benutzer: [username]
URL: [url]',
-'approval_submit_email_body_html' => 'Freigabe erteilt
+'approval_submit_email_body_html' => 'Freigabe ausgeführt
Dokument: [name]
Version: [version]
@@ -1774,7 +1774,7 @@ Status: [status]
Kommentar: [comment]
Benutzer: [username]
URL: [url]',
-'revision_submit_email_body_html' => '
Erneute Freigabe erteilt
+'revision_submit_email_body_html' => 'Erneute Freigabe ausgeführt
Dokument: [name]
Version: [version]
@@ -1783,7 +1783,7 @@ Status: [status]
Kommentar: [comment]
Benutzer: [username]
URL: [url]
',
-'revision_submit_email_subject' => '[sitename]: [name] - Erneute Freigabe erteilt',
+'revision_submit_email_subject' => '[sitename]: [name] - Erneute Freigabe ausgeführt',
'revision_summary' => 'Übersicht Wiederholungsprüfungen',
'revisors' => 'Wiederholungsprüfer',
'revisor_already_assigned' => 'Benutzer bereits als Wiederholungsprüfer eingetragen.',
@@ -1964,6 +1964,10 @@ Sollten Sie kein Passwort bekommen haben, dann nutzen Sie bitte die Passwort-Ver
'settings_allowChangeRevAppInProcess_desc' => 'Voreingestellt können Prüfer und Freigeber nicht mehr verändert werden, wenn eine Freigabe oder Prüfung ausgeführt wurde. Diese Option erlaubt es Administratoren auch nach der ersten Prüfung oder Freigabe die Prüfer und Freigeber zu verändern, bis das Dokument endgültig freigegeben oder abgelehnt ist.',
'settings_allowReviewerOnly' => 'Erlaube nur Prüfer zu setzen',
'settings_allowReviewerOnly_desc' => 'Anwählen, um zu erlauben, dass nur ein Prüfer aber kein Freigeber beim traditionellen Workflow gesetzt werden darf.',
+'settings_alwaysShowClipboard' => 'Zwischenablage im Hauptmenü immer anzeigen',
+'settings_alwaysShowClipboard_desc' => 'Zeigt den Eintrag für die Zwischenablage im Hauptmenü auch dann an, wenn die Zwischenablage leer ist',
+'settings_alwaysShowMenuTasks' => 'Aufgaben im Hauptmenü immer anzeigen',
+'settings_alwaysShowMenuTasks_desc' => 'Zeigt den Eintrag im Hauptmenü für die Aufgaben auch dann an, wenn keine Aufgaben anstehen.',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => 'Authentifizierungsschḻüssel für REST API',
'settings_apiKey_desc' => 'Dieser Schlüssel wird zur alternativen Authentifizierung in der REST API verwendet. Wählen Sie eine 32 Zeichen lange Zeichenkette.',
diff --git a/languages/el_GR/lang.inc b/languages/el_GR/lang.inc
index 0e643522b..45e40c014 100644
--- a/languages/el_GR/lang.inc
+++ b/languages/el_GR/lang.inc
@@ -1354,6 +1354,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => '',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/en_GB/lang.inc b/languages/en_GB/lang.inc
index 8fd4f8d56..3762b5e85 100644
--- a/languages/en_GB/lang.inc
+++ b/languages/en_GB/lang.inc
@@ -19,7 +19,7 @@
// along with this program; if not, write to the Free Software
// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
//
-// Translators: Admin (2460), archonwang (3), dgrutsch (9), netixw (14)
+// Translators: Admin (2464), archonwang (3), dgrutsch (9), netixw (14)
$text = array(
'2_factor_auth' => '2-factor authentication',
@@ -1966,6 +1966,10 @@ If you did not receive a password, please use the password forgotten function on
'settings_allowChangeRevAppInProcess_desc' => 'By default the reviewers and approvers cannot be changed anymore once a review or approval has been submitted. This option will allow administrators to do this as long as the document is not released or rejected.',
'settings_allowReviewerOnly' => 'Allow to set reviewer only',
'settings_allowReviewerOnly_desc' => 'Enable this, if it shall be allow to set just a reviewer but no approver in traditional workflow mode.',
+'settings_alwaysShowClipboard' => 'Always show clipboard in main menu',
+'settings_alwaysShowClipboard_desc' => 'Show the entry for the clipboard in the main menu, even if the clipboard is empty.',
+'settings_alwaysShowMenuTasks' => 'Always show tasks in main menu',
+'settings_alwaysShowMenuTasks_desc' => 'Shows the menu item in the main menu for the tasks, even if there are no tasks due.',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => 'Authentification key for REST api',
'settings_apiKey_desc' => 'This key is used a alternative authentication for the REST api. Choose a 32 char long string.',
diff --git a/languages/es_ES/lang.inc b/languages/es_ES/lang.inc
index fb870174e..b0072c4ab 100644
--- a/languages/es_ES/lang.inc
+++ b/languages/es_ES/lang.inc
@@ -1524,6 +1524,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => 'Por defecto, los revisores y aprobadores no se pueden cambiar una vez que se ha enviado una revisión o aprobación esta opción permitirá al administrador hacer esto mientras el documento no sea liberado o rechazado.',
'settings_allowReviewerOnly' => 'Permitir habilitar la función de Revisor para un usuario',
'settings_allowReviewerOnly_desc' => 'Habilite esto si se requiere permitir que un usuario sea lector o revisor sin capacidad de aprobar un documento en un proceso de workflow tradicional',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Módulo Reescritura',
'settings_apiKey' => 'Clave de autenticación para la API de descanso.',
'settings_apiKey_desc' => 'Esta clave se utiliza como autenticación alternativa para la API de descanso. Selecciona una cadena de 32 caracteres.',
diff --git a/languages/fr_FR/lang.inc b/languages/fr_FR/lang.inc
index f6eeea9b2..879e025ba 100644
--- a/languages/fr_FR/lang.inc
+++ b/languages/fr_FR/lang.inc
@@ -1911,6 +1911,10 @@ Nom : [username]
'settings_allowChangeRevAppInProcess_desc' => 'Par défaut, les réviseurs et les approbateurs ne peuvent plus être modifiés une fois la soumission d’un examen ou d’une approbation. Cette option permettra aux administrateurs de le faire tant que le document n’est pas publié ou rejeté.',
'settings_allowReviewerOnly' => 'Permettre d’affecter l’examinateur uniquement',
'settings_allowReviewerOnly_desc' => 'Activer cette option pour permettre d’affecter un examinateur mais pas d’approbateur dans le mode de Workflow traditionnel.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => 'Clé d’authentification pour l’API REST',
'settings_apiKey_desc' => 'Cette clé est utilisée pour l’authentification alternative via l\'API REST. Utilisez une chaîne de 32 caractères.',
diff --git a/languages/hr_HR/lang.inc b/languages/hr_HR/lang.inc
index 67cbd8826..11065c400 100644
--- a/languages/hr_HR/lang.inc
+++ b/languages/hr_HR/lang.inc
@@ -1537,6 +1537,10 @@ Internet poveznica: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Modul prepisa',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/hu_HU/lang.inc b/languages/hu_HU/lang.inc
index c34dcf2ee..94f2925a1 100644
--- a/languages/hu_HU/lang.inc
+++ b/languages/hu_HU/lang.inc
@@ -1514,6 +1514,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => 'Engedélyezi, hogy csak az ellenört állítsa be',
'settings_allowReviewerOnly_desc' => 'Ha ezt engedélyez, akkor lehetővé válik, hogy a hagyományos munkafolyamat módban csak ellenört állítson be, ne jóváhagyót.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Rewrite modul',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/id_ID/lang.inc b/languages/id_ID/lang.inc
index 835f63cd3..25a159c04 100644
--- a/languages/id_ID/lang.inc
+++ b/languages/id_ID/lang.inc
@@ -1604,6 +1604,10 @@ Jika Anda tidak menerima kata sandi, silakan gunakan fitur lupa kata sandi di ha
'settings_allowChangeRevAppInProcess_desc' => 'Secara default, peninjau dan pemberi persetujuan tidak dapat diubah lagi setelah tinjauan atau persetujuan telah dikirimkan. Opsi ini akan memungkinkan administrator untuk melakukan ini selama dokumen tidak dirilis atau ditolak.',
'settings_allowReviewerOnly' => 'Izinkan untuk menyetel pengulas saja',
'settings_allowReviewerOnly_desc' => 'Aktifkan ini, jika diizinkan untuk menetapkan hanya peninjau tetapi tidak ada pemberi persetujuan dalam mode alur kerja tradisional.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Modul Rewrite',
'settings_apiKey' => 'Kunci otentikasi untuk rest api',
'settings_apiKey_desc' => 'Kunci ini digunakan sebagai otentikasi alternatif untuk rest api. Pilih panjang string 32 karakter.',
diff --git a/languages/it_IT/lang.inc b/languages/it_IT/lang.inc
index 43bcff083..4de27980f 100644
--- a/languages/it_IT/lang.inc
+++ b/languages/it_IT/lang.inc
@@ -1560,6 +1560,10 @@ Name: [username]
'settings_allowChangeRevAppInProcess_desc' => 'Per impostazione predefinita, i revisori e gli approvatori non possono più essere modificati dopo l\'invio di una revisione o di un\'approvazione. Questa opzione consentirà agli amministratori di farlo purché il documento non venga rilasciato o rifiutato.',
'settings_allowReviewerOnly' => 'Abilita l\'impostazione del solo revisore',
'settings_allowReviewerOnly_desc' => 'Abilita se si vuole concedere di impostare solo un revisore ma non un apporvatore nel flusso di lavoro tradizionale',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Mod Rewrite',
'settings_apiKey' => 'Chiave di autenticazione per api',
'settings_apiKey_desc' => 'Questa chiave viene utilizzata come autenticazione alternativa per api. Scegli una stringa lunga 32 caratteri.',
diff --git a/languages/ko_KR/lang.inc b/languages/ko_KR/lang.inc
index 215b1b78c..ae1986aa1 100644
--- a/languages/ko_KR/lang.inc
+++ b/languages/ko_KR/lang.inc
@@ -1531,6 +1531,10 @@ URL : [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => '아파치 - 모듈 다시 쓰기',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/lo_LA/lang.inc b/languages/lo_LA/lang.inc
index 19e538e11..4984d77c3 100644
--- a/languages/lo_LA/lang.inc
+++ b/languages/lo_LA/lang.inc
@@ -1557,6 +1557,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'ອາປາເຊ -ຂຽນໄຫມ່',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/nb_NO/lang.inc b/languages/nb_NO/lang.inc
index 312d534d9..c7fa41fd1 100644
--- a/languages/nb_NO/lang.inc
+++ b/languages/nb_NO/lang.inc
@@ -1570,6 +1570,10 @@ Bruker: [username]
'settings_allowChangeRevAppInProcess_desc' => 'Som standard kan ikke anmelderne og godkjennerne endres lenger når en gjennomgang eller godkjenning er sendt. Dette alternativet lar administratorer gjøre dette så lenge dokumentet ikke er utgitt eller avvist.',
'settings_allowReviewerOnly' => 'Tilat til å kun sette korrektur',
'settings_allowReviewerOnly_desc' => 'Aktiver dette hvis det skal være tillatt å stille en korrekturleser, men ingen godkjenner i tradisjonell arbeidsflytmodus.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Omskriving av moduler',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/nl_NL/lang.inc b/languages/nl_NL/lang.inc
index 3fdcb30fc..967ab0af3 100644
--- a/languages/nl_NL/lang.inc
+++ b/languages/nl_NL/lang.inc
@@ -1569,6 +1569,10 @@ Name: [username]
'settings_allowChangeRevAppInProcess_desc' => 'De default is dat beoordelaars en goedkeurders niet meer veranderen nadat er al een beoordeling of goedkeuring is verzonden. Deze optie stelt administrators in staat veranderingen aan te brengen zolang het document niet is afgewezen of vrijgegeven.',
'settings_allowReviewerOnly' => 'Alleen reviewer toestaan',
'settings_allowReviewerOnly_desc' => 'Aanzetten als wel de reviewer, maar niet de goedkeurder toegewezen kan worden.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => 'Authentification key voor REST api',
'settings_apiKey_desc' => 'Deze sleutel wordt gebruikt als alternatieve authenticatie voor de REST api. Kies een tekst-string van 32 tekens.',
diff --git a/languages/pl_PL/lang.inc b/languages/pl_PL/lang.inc
index 4359fdcbc..a292cdba2 100644
--- a/languages/pl_PL/lang.inc
+++ b/languages/pl_PL/lang.inc
@@ -1500,6 +1500,10 @@ Name: [username]
'settings_allowChangeRevAppInProcess_desc' => 'Domyślnie recenzenci i osoby zatwierdzające nie mogą być już zmieniane po przesłaniu recenzji lub zatwierdzenia. Ta opcja umożliwia administratorom to zrobić tak długo, jak długo dokument nie zostanie wydany lub odrzucony.',
'settings_allowReviewerOnly' => 'Zezwalaj tylko na ustawianie recenzenta',
'settings_allowReviewerOnly_desc' => 'Włącz to, jeśli będzie można zezwolić na ustawienie tylko recenzenta, ale bez osoby zatwierdzającej w tradycyjnym trybie przepływu pracy.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Moduł Rewrite',
'settings_apiKey' => 'Klucz autentyfikacyjny dla REST API',
'settings_apiKey_desc' => 'Ten klucz jest używany jako alternatywna autentyfikacja dla REST API. Wybierz 32-znakowy łańcuch.',
diff --git a/languages/pt_BR/lang.inc b/languages/pt_BR/lang.inc
index 7656d5d86..6e3c30b83 100644
--- a/languages/pt_BR/lang.inc
+++ b/languages/pt_BR/lang.inc
@@ -1576,6 +1576,10 @@ Nome: [username]
'settings_allowChangeRevAppInProcess_desc' => 'Por padrão, os revisores e aprovadores não podem mais ser alterados depois que uma revisão ou aprovação for enviada. Essa opção permitirá que os administradores façam isso, desde que o documento não seja liberado ou rejeitado.',
'settings_allowReviewerOnly' => 'Permitir definir apenas o revisor',
'settings_allowReviewerOnly_desc' => 'Habilitar se for permitido definir apenas um revisor, mas nenhum aprovador no modo de fluxo de trabalho tradicional.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Módulo Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/ro_RO/lang.inc b/languages/ro_RO/lang.inc
index cbd7a1db0..37a222ecc 100644
--- a/languages/ro_RO/lang.inc
+++ b/languages/ro_RO/lang.inc
@@ -1538,6 +1538,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/ru_RU/lang.inc b/languages/ru_RU/lang.inc
index 8a681ecc3..c7be84ef2 100644
--- a/languages/ru_RU/lang.inc
+++ b/languages/ru_RU/lang.inc
@@ -1545,6 +1545,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache — модуль Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/sk_SK/lang.inc b/languages/sk_SK/lang.inc
index dbbd91a72..ff1fe2aaa 100644
--- a/languages/sk_SK/lang.inc
+++ b/languages/sk_SK/lang.inc
@@ -1578,6 +1578,10 @@ Meno: [username]
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => 'Allow to set reviewer only',
'settings_allowReviewerOnly_desc' => 'Enable this, if it shall be allow to set just a reviewer but no approver in traditional workflow mode.',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Modul Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/sv_SE/lang.inc b/languages/sv_SE/lang.inc
index f94edefa8..977865ca9 100644
--- a/languages/sv_SE/lang.inc
+++ b/languages/sv_SE/lang.inc
@@ -1551,6 +1551,10 @@ Kommentar: [comment]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/tr_TR/lang.inc b/languages/tr_TR/lang.inc
index 585880fcb..faa6b4721 100644
--- a/languages/tr_TR/lang.inc
+++ b/languages/tr_TR/lang.inc
@@ -1515,6 +1515,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/uk_UA/lang.inc b/languages/uk_UA/lang.inc
index 64ac8fe84..7638a5291 100644
--- a/languages/uk_UA/lang.inc
+++ b/languages/uk_UA/lang.inc
@@ -1537,6 +1537,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '',
'settings_allowReviewerOnly' => '',
'settings_allowReviewerOnly_desc' => '',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache — модуль Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/zh_CN/lang.inc b/languages/zh_CN/lang.inc
index 669e92561..a4806fad0 100644
--- a/languages/zh_CN/lang.inc
+++ b/languages/zh_CN/lang.inc
@@ -1525,6 +1525,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '默认情况下,已提交审核或审核人员和审批人有批准就不能再更改。',
'settings_allowReviewerOnly' => '允许只设置审阅者',
'settings_allowReviewerOnly_desc' => '在传统的工作流程模式中,只允许设置审批人而不允许设置审批人则启用此功能。',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache -模块重写',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
diff --git a/languages/zh_TW/lang.inc b/languages/zh_TW/lang.inc
index 52ae84522..37493e508 100644
--- a/languages/zh_TW/lang.inc
+++ b/languages/zh_TW/lang.inc
@@ -1576,6 +1576,10 @@ URL: [url]',
'settings_allowChangeRevAppInProcess_desc' => '默認情況下,一旦提交了審核或批准,就不能再更改審核者和批准者。只要未發布或拒絕文檔,此選項將允許管理員執行此操作。',
'settings_allowReviewerOnly' => '只允許設置審閱者',
'settings_allowReviewerOnly_desc' => '如果允許在傳統的工作流程模式下僅設置審閱者而不設置批准者,則啟用此功能。',
+'settings_alwaysShowClipboard' => '',
+'settings_alwaysShowClipboard_desc' => '',
+'settings_alwaysShowMenuTasks' => '',
+'settings_alwaysShowMenuTasks_desc' => '',
'settings_apache_mod_rewrite' => 'Apache - Module Rewrite',
'settings_apiKey' => '',
'settings_apiKey_desc' => '',
From d96cae48648e05fa9524085979646c8093bbb3a6 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Thu, 18 Apr 2024 19:23:47 +0200
Subject: [PATCH 09/85] set max number of item in sequence chooser to 200, make
it a chzn-select menu
---
views/bootstrap/class.Bootstrap.php | 6 +++---
views/bootstrap4/class.Bootstrap4.php | 6 +++---
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/views/bootstrap/class.Bootstrap.php b/views/bootstrap/class.Bootstrap.php
index 188111924..66b390c93 100644
--- a/views/bootstrap/class.Bootstrap.php
+++ b/views/bootstrap/class.Bootstrap.php
@@ -1638,11 +1638,11 @@ $(document).ready(function() {
function getSequenceChooser($parent, $type, $keepID = -1) { /* {{{ */
$objArr = [];
if($type == 'd') {
- if(($c = $parent->hasDocuments()) < 50)
+ if(($c = $parent->hasDocuments()) < 200)
$objArr = $parent->getDocuments('s');
$minmax = $parent->getDocumentsMinMax();
} elseif($type = 'f') {
- if(($c = $parent->hasSubFolders()) < 50)
+ if(($c = $parent->hasSubFolders()) < 200)
$objArr = $parent->getSubFolders('s');
$minmax = $parent->getFoldersMinMax();
} else
@@ -1656,7 +1656,7 @@ $(document).ready(function() {
$min = (float) $minmax['min'];
$max = $minmax['max']+1.0;
}
- $content = "\n";
+ $content = "\n";
if ($keepID != -1) {
$content .= " " . getMLText("seq_keep");
}
diff --git a/views/bootstrap4/class.Bootstrap4.php b/views/bootstrap4/class.Bootstrap4.php
index a9cb5029c..2f04ebf50 100644
--- a/views/bootstrap4/class.Bootstrap4.php
+++ b/views/bootstrap4/class.Bootstrap4.php
@@ -1648,11 +1648,11 @@ $(document).ready(function() {
function getSequenceChooser($parent, $type, $keepID = -1) { /* {{{ */
$objArr = [];
if($type == 'd') {
- if(($c = $parent->hasDocuments()) < 50)
+ if(($c = $parent->hasDocuments()) < 200)
$objArr = $parent->getDocuments('s');
$minmax = $parent->getDocumentsMinMax();
} elseif($type = 'f') {
- if(($c = $parent->hasSubFolders()) < 50)
+ if(($c = $parent->hasSubFolders()) < 200)
$objArr = $parent->getSubFolders('s');
$minmax = $parent->getFoldersMinMax();
} else
@@ -1666,7 +1666,7 @@ $(document).ready(function() {
$min = (float) $minmax['min'];
$max = $minmax['max']+1.0;
}
- $content = "\n";
+ $content = "\n";
if ($keepID != -1) {
$content .= " " . getMLText("seq_keep");
}
From 23b9def5c83e57e2766210aba283cd6db87ba87e Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Fri, 19 Apr 2024 17:18:06 +0200
Subject: [PATCH 10/85] pass logger to view and controller
---
inc/inc.ClassController.php | 3 ++-
inc/inc.ClassUI.php | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/inc/inc.ClassController.php b/inc/inc.ClassController.php
index a6ebc1936..fa414499e 100644
--- a/inc/inc.ClassController.php
+++ b/inc/inc.ClassController.php
@@ -30,7 +30,7 @@ class Controller {
* @return object an object of a class implementing the view
*/
static function factory($class, $params=array()) { /* {{{ */
- global $settings, $session, $extMgr, $request;
+ global $settings, $session, $extMgr, $request, $logger;
if(!$class) {
return null;
}
@@ -58,6 +58,7 @@ class Controller {
$controller->setParam('session', $session);
$controller->setParam('request', $request);
$controller->setParam('settings', $settings);
+ $controller->setParam('logger', $logger);
return $controller;
}
return null;
diff --git a/inc/inc.ClassUI.php b/inc/inc.ClassUI.php
index be10e8bab..94bcdb5b1 100644
--- a/inc/inc.ClassUI.php
+++ b/inc/inc.ClassUI.php
@@ -45,7 +45,7 @@ class UI extends UI_Default {
* @return object an object of a class implementing the view
*/
static function factory($theme, $class='', $params=array()) { /* {{{ */
- global $settings, $session, $extMgr, $request;
+ global $settings, $session, $extMgr, $request, $logger;
if(!$class) {
$class = 'Bootstrap';
$class = 'Style';
@@ -133,6 +133,7 @@ class UI extends UI_Default {
$view->setParam('class', $class);
$view->setParam('session', $session);
$view->setParam('request', $request);
+ $view->setParam('logger', $logger);
// $view->setParam('settings', $settings);
$view->setParam('sitename', $settings->_siteName);
$view->setParam('rootfolderid', $settings->_rootFolderID);
From bb416ffe567a8ca83711b3dd18c345454c4e7bcd Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Fri, 19 Apr 2024 17:18:28 +0200
Subject: [PATCH 11/85] allow empty for regular select menus of config
variables
---
views/bootstrap/class.Settings.php | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/views/bootstrap/class.Settings.php b/views/bootstrap/class.Settings.php
index 708d8fdea..7b0b6f33d 100644
--- a/views/bootstrap/class.Settings.php
+++ b/views/bootstrap/class.Settings.php
@@ -634,9 +634,10 @@ if(($kkk = $this->callHook('getFullSearchEngine')) && is_array($kkk))
_extensions[$extname][$confkey]) ? array() : explode(",", $settings->_extensions[$extname][$confkey]);
- echo "";
+ echo "";
if(is_array($conf['options'])) {
$options = $conf['options'];
} elseif(is_string($conf['options']) && $conf['options'] == 'hook') {
@@ -644,6 +645,8 @@ if(($kkk = $this->callHook('getFullSearchEngine')) && is_array($kkk))
} else {
$options = [];
}
+ if($allowempty)
+ echo " ";
foreach($options as $key=>$opt) {
echo "callHook('getFullSearchEngine')) && is_array($kkk))
echo " ";
} elseif(!empty($conf['internal'])) {
$selections = empty($settings->_extensions[$extname][$confkey]) ? array() : explode(",", $settings->_extensions[$extname][$confkey]);
- $allowempty = empty($conf['allow_empty']) ? false : $conf['allow_empty'];
switch($conf['internal']) {
case "categories":
$categories = $dms->getDocumentCategories();
From 416df6c84652cecdc37d8db09204c3c09b3cd864 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Sun, 21 Apr 2024 13:38:33 +0200
Subject: [PATCH 12/85] fix insert statement
---
install/create_tables-postgres.sql | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/install/create_tables-postgres.sql b/install/create_tables-postgres.sql
index d010b1dd9..0a38d099c 100644
--- a/install/create_tables-postgres.sql
+++ b/install/create_tables-postgres.sql
@@ -824,7 +824,7 @@ INSERT INTO "tblRoles" ("id", "name", "role") VALUES (2, 'Guest', 2);
SELECT nextval('"tblRoles_id_seq"');
INSERT INTO "tblRoles" ("id", "name", "role") VALUES (3, 'User', 0);
SELECT nextval('"tblRoles_id_seq"');
-INSERT INTO "tblUsers" VALUES (1, 'admin', '21232f297a57a5a743894a0e4a801fc3', 'Administrator', 'info@seeddms.org', '', '', '', 1, 0, NULL, 0, 0, 0, NULL);
+INSERT INTO "tblUsers" VALUES (1, 'admin', '21232f297a57a5a743894a0e4a801fc3', '', 'Administrator', 'info@seeddms.org', '', '', '', 1, 0, NULL, 0, 0, 0, NULL);
SELECT nextval('"tblUsers_id_seq"');
INSERT INTO "tblUsers" VALUES (2, 'guest', NULL, '', 'Guest User', NULL, '', '', '', 2, 0, NULL, 0, 0, 0, NULL);
SELECT nextval('"tblUsers_id_seq"');
From 6a13d61abc264dc69b79d30b76f0ad64129b11ce Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Mon, 22 Apr 2024 10:59:02 +0200
Subject: [PATCH 13/85] fix calling getMandatory(Reviewer|Approver)
---
webdav/webdav.php | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/webdav/webdav.php b/webdav/webdav.php
index 11ea7566c..8973ff4ed 100644
--- a/webdav/webdav.php
+++ b/webdav/webdav.php
@@ -737,9 +737,9 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server
$workflow = null;
if($this->settings->_workflowMode == 'traditional' || $this->settings->_workflowMode == 'traditional_only_approval') {
if($this->settings->_workflowMode == 'traditional') {
- $reviewers = getMandatoryReviewers($document->getFolder(), $this->user);
+ $reviewers = getMandatoryReviewers($document->getFolder(), $document, $this->user);
}
- $approvers = getMandatoryApprovers($document->getFolder(), $this->user);
+ $approvers = getMandatoryApprovers($document->getFolder(), $document, $this->user);
} elseif($this->settings->_workflowMode == 'advanced') {
if($workflows = $this->user->getMandatoryWorkflows()) {
$workflow = array_shift($workflows);
@@ -809,9 +809,9 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server
$workflow = null;
if($this->settings->_workflowMode == 'traditional' || $this->settings->_workflowMode == 'traditional_only_approval') {
if($this->settings->_workflowMode == 'traditional') {
- $reviewers = getMandatoryReviewers($folder, $this->user);
+ $reviewers = getMandatoryReviewers($folder, null, $this->user);
}
- $approvers = getMandatoryApprovers($folder, $this->user);
+ $approvers = getMandatoryApprovers($folder, null, $this->user);
} elseif($this->settings->_workflowMode == 'advanced') {
if($workflows = $this->user->getMandatoryWorkflows()) {
$workflow = array_shift($workflows);
@@ -1285,9 +1285,9 @@ class HTTP_WebDAV_Server_SeedDMS extends HTTP_WebDAV_Server
$workflow = null;
if($this->settings->_workflowMode == 'traditional' || $this->settings->_workflowMode == 'traditional_only_approval') {
if($this->settings->_workflowMode == 'traditional') {
- $reviewers = getMandatoryReviewers($objdest, $this->user);
+ $reviewers = getMandatoryReviewers($objdest, null, $this->user);
}
- $approvers = getMandatoryApprovers($objdest, $this->user);
+ $approvers = getMandatoryApprovers($objdest, null, $this->user);
} elseif($this->settings->_workflowMode == 'advanced') {
if($workflows = $this->user->getMandatoryWorkflows()) {
$workflow = array_shift($workflows);
From 593b6359d2de5b4b8b00a1e473cfc73eb8b37c25 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Mon, 22 Apr 2024 14:47:50 +0200
Subject: [PATCH 14/85] enlarge space between menu items (new sass compiler
causes other changes)
---
views/bootstrap4/styles/seeddms.css | 1561 ++++++++-------------------
1 file changed, 423 insertions(+), 1138 deletions(-)
diff --git a/views/bootstrap4/styles/seeddms.css b/views/bootstrap4/styles/seeddms.css
index 521043553..ae1bea323 100644
--- a/views/bootstrap4/styles/seeddms.css
+++ b/views/bootstrap4/styles/seeddms.css
@@ -1,3 +1,4 @@
+@charset "UTF-8";
/*! `SeedDMS` Bootstrap 4 theme */
/*
@import url(https://fonts.googleapis.com/css?family=Nunito:200,300,400,700);
@@ -135,7 +136,7 @@ dt {
}
dd {
- margin-bottom: .5rem;
+ margin-bottom: 0.5rem;
margin-left: 0;
}
@@ -161,11 +162,11 @@ sup {
}
sub {
- bottom: -.25em;
+ bottom: -0.25em;
}
sup {
- top: -.5em;
+ top: -0.5em;
}
a {
@@ -173,7 +174,6 @@ a {
text-decoration: none;
background-color: transparent;
}
-
a:hover {
color: #020a12;
text-decoration: underline;
@@ -183,7 +183,6 @@ a:not([href]):not([class]) {
color: inherit;
text-decoration: none;
}
-
a:not([href]):not([class]):hover {
color: inherit;
text-decoration: none;
@@ -269,7 +268,7 @@ select {
text-transform: none;
}
-[role="button"] {
+[role=button] {
cursor: pointer;
}
@@ -278,29 +277,29 @@ select {
}
button,
-[type="button"],
-[type="reset"],
-[type="submit"] {
+[type=button],
+[type=reset],
+[type=submit] {
-webkit-appearance: button;
}
button:not(:disabled),
-[type="button"]:not(:disabled),
-[type="reset"]:not(:disabled),
-[type="submit"]:not(:disabled) {
+[type=button]:not(:disabled),
+[type=reset]:not(:disabled),
+[type=submit]:not(:disabled) {
cursor: pointer;
}
button::-moz-focus-inner,
-[type="button"]::-moz-focus-inner,
-[type="reset"]::-moz-focus-inner,
-[type="submit"]::-moz-focus-inner {
+[type=button]::-moz-focus-inner,
+[type=reset]::-moz-focus-inner,
+[type=submit]::-moz-focus-inner {
padding: 0;
border-style: none;
}
-input[type="radio"],
-input[type="checkbox"] {
+input[type=radio],
+input[type=checkbox] {
box-sizing: border-box;
padding: 0;
}
@@ -322,7 +321,7 @@ legend {
width: 100%;
max-width: 100%;
padding: 0;
- margin-bottom: .5rem;
+ margin-bottom: 0.5rem;
font-size: 1.5rem;
line-height: inherit;
color: inherit;
@@ -333,17 +332,17 @@ progress {
vertical-align: baseline;
}
-[type="number"]::-webkit-inner-spin-button,
-[type="number"]::-webkit-outer-spin-button {
+[type=number]::-webkit-inner-spin-button,
+[type=number]::-webkit-outer-spin-button {
height: auto;
}
-[type="search"] {
+[type=search] {
outline-offset: -2px;
-webkit-appearance: none;
}
-[type="search"]::-webkit-search-decoration {
+[type=search]::-webkit-search-decoration {
-webkit-appearance: none;
}
@@ -461,7 +460,6 @@ mark,
.list-inline-item {
display: inline-block;
}
-
.list-inline-item:not(:last-child) {
margin-right: 0.5rem;
}
@@ -481,9 +479,8 @@ mark,
font-size: 0.875em;
color: #6c757d;
}
-
.blockquote-footer::before {
- content: "\2014\00A0";
+ content: "— ";
}
.img-fluid {
@@ -519,7 +516,6 @@ code {
color: #e83e8c;
word-wrap: break-word;
}
-
a > code {
color: inherit;
}
@@ -531,7 +527,6 @@ kbd {
background-color: #212529;
box-shadow: inset 0 -0.1rem 0 rgba(0, 0, 0, 0.25);
}
-
kbd kbd {
padding: 0;
font-size: 100%;
@@ -544,7 +539,6 @@ pre {
font-size: 87.5%;
color: #212529;
}
-
pre code {
font-size: inherit;
color: inherit;
@@ -558,10 +552,10 @@ pre code {
.container,
.container-fluid,
-.container-sm,
-.container-md,
+.container-xl,
.container-lg,
-.container-xl {
+.container-md,
+.container-sm {
width: 100%;
padding-right: 15px;
padding-left: 15px;
@@ -570,29 +564,25 @@ pre code {
}
@media (min-width: 576px) {
- .container, .container-sm {
+ .container-sm, .container {
max-width: 540px;
}
}
-
@media (min-width: 768px) {
- .container, .container-sm, .container-md {
+ .container-md, .container-sm, .container {
max-width: 720px;
}
}
-
@media (min-width: 992px) {
- .container, .container-sm, .container-md, .container-lg {
+ .container-lg, .container-md, .container-sm, .container {
max-width: 960px;
}
}
-
@media (min-width: 1200px) {
- .container, .container-sm, .container-md, .container-lg, .container-xl {
+ .container-xl, .container-lg, .container-md, .container-sm, .container {
max-width: 1140px;
}
}
-
.row {
display: flex;
flex-wrap: wrap;
@@ -604,19 +594,18 @@ pre code {
margin-right: 0;
margin-left: 0;
}
-
.no-gutters > .col,
-.no-gutters > [class*="col-"] {
+.no-gutters > [class*=col-] {
padding-right: 0;
padding-left: 0;
}
-.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
-.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
-.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
-.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
-.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
-.col-xl-auto {
+.col-xl,
+.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
+.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
+.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
+.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
+.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
position: relative;
width: 100%;
padding-right: 15px;
@@ -640,8 +629,8 @@ pre code {
}
.row-cols-3 > * {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%;
}
.row-cols-4 > * {
@@ -655,8 +644,8 @@ pre code {
}
.row-cols-6 > * {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%;
}
.col-auto {
@@ -666,13 +655,13 @@ pre code {
}
.col-1 {
- flex: 0 0 8.333333%;
- max-width: 8.333333%;
+ flex: 0 0 8.33333333%;
+ max-width: 8.33333333%;
}
.col-2 {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.66666667%;
+ max-width: 16.66666667%;
}
.col-3 {
@@ -681,13 +670,13 @@ pre code {
}
.col-4 {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.33333333%;
+ max-width: 33.33333333%;
}
.col-5 {
- flex: 0 0 41.666667%;
- max-width: 41.666667%;
+ flex: 0 0 41.66666667%;
+ max-width: 41.66666667%;
}
.col-6 {
@@ -696,13 +685,13 @@ pre code {
}
.col-7 {
- flex: 0 0 58.333333%;
- max-width: 58.333333%;
+ flex: 0 0 58.33333333%;
+ max-width: 58.33333333%;
}
.col-8 {
- flex: 0 0 66.666667%;
- max-width: 66.666667%;
+ flex: 0 0 66.66666667%;
+ max-width: 66.66666667%;
}
.col-9 {
@@ -711,13 +700,13 @@ pre code {
}
.col-10 {
- flex: 0 0 83.333333%;
- max-width: 83.333333%;
+ flex: 0 0 83.33333333%;
+ max-width: 83.33333333%;
}
.col-11 {
- flex: 0 0 91.666667%;
- max-width: 91.666667%;
+ flex: 0 0 91.66666667%;
+ max-width: 91.66666667%;
}
.col-12 {
@@ -786,11 +775,11 @@ pre code {
}
.offset-1 {
- margin-left: 8.333333%;
+ margin-left: 8.33333333%;
}
.offset-2 {
- margin-left: 16.666667%;
+ margin-left: 16.66666667%;
}
.offset-3 {
@@ -798,11 +787,11 @@ pre code {
}
.offset-4 {
- margin-left: 33.333333%;
+ margin-left: 33.33333333%;
}
.offset-5 {
- margin-left: 41.666667%;
+ margin-left: 41.66666667%;
}
.offset-6 {
@@ -810,11 +799,11 @@ pre code {
}
.offset-7 {
- margin-left: 58.333333%;
+ margin-left: 58.33333333%;
}
.offset-8 {
- margin-left: 66.666667%;
+ margin-left: 66.66666667%;
}
.offset-9 {
@@ -822,11 +811,11 @@ pre code {
}
.offset-10 {
- margin-left: 83.333333%;
+ margin-left: 83.33333333%;
}
.offset-11 {
- margin-left: 91.666667%;
+ margin-left: 91.66666667%;
}
@media (min-width: 576px) {
@@ -844,8 +833,8 @@ pre code {
max-width: 50%;
}
.row-cols-sm-3 > * {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%;
}
.row-cols-sm-4 > * {
flex: 0 0 25%;
@@ -856,8 +845,8 @@ pre code {
max-width: 20%;
}
.row-cols-sm-6 > * {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%;
}
.col-sm-auto {
flex: 0 0 auto;
@@ -865,48 +854,48 @@ pre code {
max-width: 100%;
}
.col-sm-1 {
- flex: 0 0 8.333333%;
- max-width: 8.333333%;
+ flex: 0 0 8.33333333%;
+ max-width: 8.33333333%;
}
.col-sm-2 {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.66666667%;
+ max-width: 16.66666667%;
}
.col-sm-3 {
flex: 0 0 25%;
max-width: 25%;
}
.col-sm-4 {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.33333333%;
+ max-width: 33.33333333%;
}
.col-sm-5 {
- flex: 0 0 41.666667%;
- max-width: 41.666667%;
+ flex: 0 0 41.66666667%;
+ max-width: 41.66666667%;
}
.col-sm-6 {
flex: 0 0 50%;
max-width: 50%;
}
.col-sm-7 {
- flex: 0 0 58.333333%;
- max-width: 58.333333%;
+ flex: 0 0 58.33333333%;
+ max-width: 58.33333333%;
}
.col-sm-8 {
- flex: 0 0 66.666667%;
- max-width: 66.666667%;
+ flex: 0 0 66.66666667%;
+ max-width: 66.66666667%;
}
.col-sm-9 {
flex: 0 0 75%;
max-width: 75%;
}
.col-sm-10 {
- flex: 0 0 83.333333%;
- max-width: 83.333333%;
+ flex: 0 0 83.33333333%;
+ max-width: 83.33333333%;
}
.col-sm-11 {
- flex: 0 0 91.666667%;
- max-width: 91.666667%;
+ flex: 0 0 91.66666667%;
+ max-width: 91.66666667%;
}
.col-sm-12 {
flex: 0 0 100%;
@@ -961,40 +950,39 @@ pre code {
margin-left: 0;
}
.offset-sm-1 {
- margin-left: 8.333333%;
+ margin-left: 8.33333333%;
}
.offset-sm-2 {
- margin-left: 16.666667%;
+ margin-left: 16.66666667%;
}
.offset-sm-3 {
margin-left: 25%;
}
.offset-sm-4 {
- margin-left: 33.333333%;
+ margin-left: 33.33333333%;
}
.offset-sm-5 {
- margin-left: 41.666667%;
+ margin-left: 41.66666667%;
}
.offset-sm-6 {
margin-left: 50%;
}
.offset-sm-7 {
- margin-left: 58.333333%;
+ margin-left: 58.33333333%;
}
.offset-sm-8 {
- margin-left: 66.666667%;
+ margin-left: 66.66666667%;
}
.offset-sm-9 {
margin-left: 75%;
}
.offset-sm-10 {
- margin-left: 83.333333%;
+ margin-left: 83.33333333%;
}
.offset-sm-11 {
- margin-left: 91.666667%;
+ margin-left: 91.66666667%;
}
}
-
@media (min-width: 768px) {
.col-md {
flex-basis: 0;
@@ -1010,8 +998,8 @@ pre code {
max-width: 50%;
}
.row-cols-md-3 > * {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%;
}
.row-cols-md-4 > * {
flex: 0 0 25%;
@@ -1022,8 +1010,8 @@ pre code {
max-width: 20%;
}
.row-cols-md-6 > * {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%;
}
.col-md-auto {
flex: 0 0 auto;
@@ -1031,48 +1019,48 @@ pre code {
max-width: 100%;
}
.col-md-1 {
- flex: 0 0 8.333333%;
- max-width: 8.333333%;
+ flex: 0 0 8.33333333%;
+ max-width: 8.33333333%;
}
.col-md-2 {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.66666667%;
+ max-width: 16.66666667%;
}
.col-md-3 {
flex: 0 0 25%;
max-width: 25%;
}
.col-md-4 {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.33333333%;
+ max-width: 33.33333333%;
}
.col-md-5 {
- flex: 0 0 41.666667%;
- max-width: 41.666667%;
+ flex: 0 0 41.66666667%;
+ max-width: 41.66666667%;
}
.col-md-6 {
flex: 0 0 50%;
max-width: 50%;
}
.col-md-7 {
- flex: 0 0 58.333333%;
- max-width: 58.333333%;
+ flex: 0 0 58.33333333%;
+ max-width: 58.33333333%;
}
.col-md-8 {
- flex: 0 0 66.666667%;
- max-width: 66.666667%;
+ flex: 0 0 66.66666667%;
+ max-width: 66.66666667%;
}
.col-md-9 {
flex: 0 0 75%;
max-width: 75%;
}
.col-md-10 {
- flex: 0 0 83.333333%;
- max-width: 83.333333%;
+ flex: 0 0 83.33333333%;
+ max-width: 83.33333333%;
}
.col-md-11 {
- flex: 0 0 91.666667%;
- max-width: 91.666667%;
+ flex: 0 0 91.66666667%;
+ max-width: 91.66666667%;
}
.col-md-12 {
flex: 0 0 100%;
@@ -1127,40 +1115,39 @@ pre code {
margin-left: 0;
}
.offset-md-1 {
- margin-left: 8.333333%;
+ margin-left: 8.33333333%;
}
.offset-md-2 {
- margin-left: 16.666667%;
+ margin-left: 16.66666667%;
}
.offset-md-3 {
margin-left: 25%;
}
.offset-md-4 {
- margin-left: 33.333333%;
+ margin-left: 33.33333333%;
}
.offset-md-5 {
- margin-left: 41.666667%;
+ margin-left: 41.66666667%;
}
.offset-md-6 {
margin-left: 50%;
}
.offset-md-7 {
- margin-left: 58.333333%;
+ margin-left: 58.33333333%;
}
.offset-md-8 {
- margin-left: 66.666667%;
+ margin-left: 66.66666667%;
}
.offset-md-9 {
margin-left: 75%;
}
.offset-md-10 {
- margin-left: 83.333333%;
+ margin-left: 83.33333333%;
}
.offset-md-11 {
- margin-left: 91.666667%;
+ margin-left: 91.66666667%;
}
}
-
@media (min-width: 992px) {
.col-lg {
flex-basis: 0;
@@ -1176,8 +1163,8 @@ pre code {
max-width: 50%;
}
.row-cols-lg-3 > * {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%;
}
.row-cols-lg-4 > * {
flex: 0 0 25%;
@@ -1188,8 +1175,8 @@ pre code {
max-width: 20%;
}
.row-cols-lg-6 > * {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%;
}
.col-lg-auto {
flex: 0 0 auto;
@@ -1197,48 +1184,48 @@ pre code {
max-width: 100%;
}
.col-lg-1 {
- flex: 0 0 8.333333%;
- max-width: 8.333333%;
+ flex: 0 0 8.33333333%;
+ max-width: 8.33333333%;
}
.col-lg-2 {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.66666667%;
+ max-width: 16.66666667%;
}
.col-lg-3 {
flex: 0 0 25%;
max-width: 25%;
}
.col-lg-4 {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.33333333%;
+ max-width: 33.33333333%;
}
.col-lg-5 {
- flex: 0 0 41.666667%;
- max-width: 41.666667%;
+ flex: 0 0 41.66666667%;
+ max-width: 41.66666667%;
}
.col-lg-6 {
flex: 0 0 50%;
max-width: 50%;
}
.col-lg-7 {
- flex: 0 0 58.333333%;
- max-width: 58.333333%;
+ flex: 0 0 58.33333333%;
+ max-width: 58.33333333%;
}
.col-lg-8 {
- flex: 0 0 66.666667%;
- max-width: 66.666667%;
+ flex: 0 0 66.66666667%;
+ max-width: 66.66666667%;
}
.col-lg-9 {
flex: 0 0 75%;
max-width: 75%;
}
.col-lg-10 {
- flex: 0 0 83.333333%;
- max-width: 83.333333%;
+ flex: 0 0 83.33333333%;
+ max-width: 83.33333333%;
}
.col-lg-11 {
- flex: 0 0 91.666667%;
- max-width: 91.666667%;
+ flex: 0 0 91.66666667%;
+ max-width: 91.66666667%;
}
.col-lg-12 {
flex: 0 0 100%;
@@ -1293,40 +1280,39 @@ pre code {
margin-left: 0;
}
.offset-lg-1 {
- margin-left: 8.333333%;
+ margin-left: 8.33333333%;
}
.offset-lg-2 {
- margin-left: 16.666667%;
+ margin-left: 16.66666667%;
}
.offset-lg-3 {
margin-left: 25%;
}
.offset-lg-4 {
- margin-left: 33.333333%;
+ margin-left: 33.33333333%;
}
.offset-lg-5 {
- margin-left: 41.666667%;
+ margin-left: 41.66666667%;
}
.offset-lg-6 {
margin-left: 50%;
}
.offset-lg-7 {
- margin-left: 58.333333%;
+ margin-left: 58.33333333%;
}
.offset-lg-8 {
- margin-left: 66.666667%;
+ margin-left: 66.66666667%;
}
.offset-lg-9 {
margin-left: 75%;
}
.offset-lg-10 {
- margin-left: 83.333333%;
+ margin-left: 83.33333333%;
}
.offset-lg-11 {
- margin-left: 91.666667%;
+ margin-left: 91.66666667%;
}
}
-
@media (min-width: 1200px) {
.col-xl {
flex-basis: 0;
@@ -1342,8 +1328,8 @@ pre code {
max-width: 50%;
}
.row-cols-xl-3 > * {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.3333333333%;
+ max-width: 33.3333333333%;
}
.row-cols-xl-4 > * {
flex: 0 0 25%;
@@ -1354,8 +1340,8 @@ pre code {
max-width: 20%;
}
.row-cols-xl-6 > * {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.6666666667%;
+ max-width: 16.6666666667%;
}
.col-xl-auto {
flex: 0 0 auto;
@@ -1363,48 +1349,48 @@ pre code {
max-width: 100%;
}
.col-xl-1 {
- flex: 0 0 8.333333%;
- max-width: 8.333333%;
+ flex: 0 0 8.33333333%;
+ max-width: 8.33333333%;
}
.col-xl-2 {
- flex: 0 0 16.666667%;
- max-width: 16.666667%;
+ flex: 0 0 16.66666667%;
+ max-width: 16.66666667%;
}
.col-xl-3 {
flex: 0 0 25%;
max-width: 25%;
}
.col-xl-4 {
- flex: 0 0 33.333333%;
- max-width: 33.333333%;
+ flex: 0 0 33.33333333%;
+ max-width: 33.33333333%;
}
.col-xl-5 {
- flex: 0 0 41.666667%;
- max-width: 41.666667%;
+ flex: 0 0 41.66666667%;
+ max-width: 41.66666667%;
}
.col-xl-6 {
flex: 0 0 50%;
max-width: 50%;
}
.col-xl-7 {
- flex: 0 0 58.333333%;
- max-width: 58.333333%;
+ flex: 0 0 58.33333333%;
+ max-width: 58.33333333%;
}
.col-xl-8 {
- flex: 0 0 66.666667%;
- max-width: 66.666667%;
+ flex: 0 0 66.66666667%;
+ max-width: 66.66666667%;
}
.col-xl-9 {
flex: 0 0 75%;
max-width: 75%;
}
.col-xl-10 {
- flex: 0 0 83.333333%;
- max-width: 83.333333%;
+ flex: 0 0 83.33333333%;
+ max-width: 83.33333333%;
}
.col-xl-11 {
- flex: 0 0 91.666667%;
- max-width: 91.666667%;
+ flex: 0 0 91.66666667%;
+ max-width: 91.66666667%;
}
.col-xl-12 {
flex: 0 0 100%;
@@ -1459,58 +1445,54 @@ pre code {
margin-left: 0;
}
.offset-xl-1 {
- margin-left: 8.333333%;
+ margin-left: 8.33333333%;
}
.offset-xl-2 {
- margin-left: 16.666667%;
+ margin-left: 16.66666667%;
}
.offset-xl-3 {
margin-left: 25%;
}
.offset-xl-4 {
- margin-left: 33.333333%;
+ margin-left: 33.33333333%;
}
.offset-xl-5 {
- margin-left: 41.666667%;
+ margin-left: 41.66666667%;
}
.offset-xl-6 {
margin-left: 50%;
}
.offset-xl-7 {
- margin-left: 58.333333%;
+ margin-left: 58.33333333%;
}
.offset-xl-8 {
- margin-left: 66.666667%;
+ margin-left: 66.66666667%;
}
.offset-xl-9 {
margin-left: 75%;
}
.offset-xl-10 {
- margin-left: 83.333333%;
+ margin-left: 83.33333333%;
}
.offset-xl-11 {
- margin-left: 91.666667%;
+ margin-left: 91.66666667%;
}
}
-
.table {
width: 100%;
margin-bottom: 0.5rem;
color: #212529;
}
-
.table th,
.table td {
padding: 0.75rem;
vertical-align: top;
border-top: 1px solid #e3e3e3;
}
-
.table thead th {
vertical-align: bottom;
border-bottom: 2px solid #e3e3e3;
}
-
.table tbody + tbody {
border-top: 2px solid #e3e3e3;
}
@@ -1523,12 +1505,10 @@ pre code {
.table-bordered {
border: 1px solid #e3e3e3;
}
-
.table-bordered th,
.table-bordered td {
border: 1px solid #e3e3e3;
}
-
.table-bordered thead th,
.table-bordered thead td {
border-bottom-width: 2px;
@@ -1555,7 +1535,6 @@ pre code {
.table-primary > td {
background-color: #bac6d0;
}
-
.table-primary th,
.table-primary td,
.table-primary thead th,
@@ -1566,7 +1545,6 @@ pre code {
.table-hover .table-primary:hover {
background-color: #abb9c6;
}
-
.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
background-color: #abb9c6;
@@ -1577,7 +1555,6 @@ pre code {
.table-secondary > td {
background-color: #ebebeb;
}
-
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
@@ -1588,7 +1565,6 @@ pre code {
.table-hover .table-secondary:hover {
background-color: #dedede;
}
-
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
background-color: #dedede;
@@ -1599,7 +1575,6 @@ pre code {
.table-success > td {
background-color: #b8dec3;
}
-
.table-success th,
.table-success td,
.table-success thead th,
@@ -1610,7 +1585,6 @@ pre code {
.table-hover .table-success:hover {
background-color: #a7d6b4;
}
-
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
background-color: #a7d6b4;
@@ -1621,7 +1595,6 @@ pre code {
.table-info > td {
background-color: #d8f5fb;
}
-
.table-info th,
.table-info td,
.table-info thead th,
@@ -1632,7 +1605,6 @@ pre code {
.table-hover .table-info:hover {
background-color: #c1eff9;
}
-
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
background-color: #c1eff9;
@@ -1643,7 +1615,6 @@ pre code {
.table-warning > td {
background-color: #f8f2b8;
}
-
.table-warning th,
.table-warning td,
.table-warning thead th,
@@ -1654,7 +1625,6 @@ pre code {
.table-hover .table-warning:hover {
background-color: #f6eea1;
}
-
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
background-color: #f6eea1;
@@ -1665,7 +1635,6 @@ pre code {
.table-danger > td {
background-color: #f7c7c7;
}
-
.table-danger th,
.table-danger td,
.table-danger thead th,
@@ -1676,7 +1645,6 @@ pre code {
.table-hover .table-danger:hover {
background-color: #f4b1b1;
}
-
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
background-color: #f4b1b1;
@@ -1687,7 +1655,6 @@ pre code {
.table-light > td {
background-color: #fcfcfc;
}
-
.table-light th,
.table-light td,
.table-light thead th,
@@ -1698,7 +1665,6 @@ pre code {
.table-hover .table-light:hover {
background-color: #efefef;
}
-
.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
background-color: #efefef;
@@ -1709,7 +1675,6 @@ pre code {
.table-dark > td {
background-color: #bac1cb;
}
-
.table-dark th,
.table-dark td,
.table-dark thead th,
@@ -1720,7 +1685,6 @@ pre code {
.table-hover .table-dark:hover {
background-color: #abb4c0;
}
-
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
background-color: #abb4c0;
@@ -1735,7 +1699,6 @@ pre code {
.table-hover .table-active:hover {
background-color: rgba(0, 0, 0, 0.075);
}
-
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
background-color: rgba(0, 0, 0, 0.075);
@@ -1746,7 +1709,6 @@ pre code {
background-color: #343a40;
border-color: #454d55;
}
-
.table .thead-light th {
color: #495057;
background-color: #e9ecef;
@@ -1757,21 +1719,17 @@ pre code {
color: #fff;
background-color: #343a40;
}
-
.table-dark th,
.table-dark td,
.table-dark thead th {
border-color: #454d55;
}
-
.table-dark.table-bordered {
border: 0;
}
-
.table-dark.table-striped tbody tr:nth-of-type(odd) {
background-color: rgba(255, 255, 255, 0.05);
}
-
.table-dark.table-hover tbody tr:hover {
color: #fff;
background-color: rgba(255, 255, 255, 0.075);
@@ -1788,7 +1746,6 @@ pre code {
border: 0;
}
}
-
@media (max-width: 767.98px) {
.table-responsive-md {
display: block;
@@ -1800,7 +1757,6 @@ pre code {
border: 0;
}
}
-
@media (max-width: 991.98px) {
.table-responsive-lg {
display: block;
@@ -1812,7 +1768,6 @@ pre code {
border: 0;
}
}
-
@media (max-width: 1199.98px) {
.table-responsive-xl {
display: block;
@@ -1824,14 +1779,12 @@ pre code {
border: 0;
}
}
-
.table-responsive {
display: block;
width: 100%;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}
-
.table-responsive > .table-bordered {
border: 0;
}
@@ -1852,18 +1805,15 @@ pre code {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
-
@media (prefers-reduced-motion: reduce) {
.form-control {
transition: none;
}
}
-
.form-control::-ms-expand {
background-color: transparent;
border: 0;
}
-
.form-control:focus {
color: #495057;
background-color: #fff;
@@ -1871,21 +1821,19 @@ pre code {
outline: 0;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.form-control::placeholder {
color: #6c757d;
opacity: 1;
}
-
.form-control:disabled, .form-control[readonly] {
background-color: #e9ecef;
opacity: 1;
}
-input[type="date"].form-control,
-input[type="time"].form-control,
-input[type="datetime-local"].form-control,
-input[type="month"].form-control {
+input[type=date].form-control,
+input[type=time].form-control,
+input[type=datetime-local].form-control,
+input[type=month].form-control {
appearance: none;
}
@@ -1893,7 +1841,6 @@ select.form-control:-moz-focusring {
color: transparent;
text-shadow: 0 0 0 #495057;
}
-
select.form-control:focus::-ms-value {
color: #495057;
background-color: #fff;
@@ -1939,7 +1886,6 @@ select.form-control:focus::-ms-value {
border: solid transparent;
border-width: 1px 0;
}
-
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
padding-right: 0;
padding-left: 0;
@@ -1982,9 +1928,8 @@ textarea.form-control {
margin-right: -5px;
margin-left: -5px;
}
-
.form-row > .col,
-.form-row > [class*="col-"] {
+.form-row > [class*=col-] {
padding-right: 5px;
padding-left: 5px;
}
@@ -2000,9 +1945,7 @@ textarea.form-control {
margin-top: 0.3rem;
margin-left: -1.25rem;
}
-
-.form-check-input[disabled] ~ .form-check-label,
-.form-check-input:disabled ~ .form-check-label {
+.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
color: #6c757d;
}
@@ -2016,7 +1959,6 @@ textarea.form-control {
padding-left: 0;
margin-right: 0.75rem;
}
-
.form-check-inline .form-check-input {
position: static;
margin-top: 0;
@@ -2040,15 +1982,13 @@ textarea.form-control {
display: none;
max-width: 100%;
padding: 0.25rem 0.5rem;
- margin-top: .1rem;
+ margin-top: 0.1rem;
font-size: 0.875rem;
line-height: 1.5;
color: #fff;
background-color: rgba(0, 138, 41, 0.9);
}
-
-.form-row > .col > .valid-tooltip,
-.form-row > [class*="col-"] > .valid-tooltip {
+.form-row > .col > .valid-tooltip, .form-row > [class*=col-] > .valid-tooltip {
left: 5px;
}
@@ -2067,7 +2007,6 @@ textarea.form-control {
background-position: right calc(0.375em + 0.1875rem) center;
background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
-
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
border-color: #008a29;
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.25);
@@ -2088,7 +2027,6 @@ textarea.form-control {
padding-right: calc(0.75em + 2.3125rem) !important;
background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23008a29' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
-
.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
border-color: #008a29;
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.25);
@@ -2097,7 +2035,6 @@ textarea.form-control {
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
color: #008a29;
}
-
.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
@@ -2107,20 +2044,16 @@ textarea.form-control {
.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
color: #008a29;
}
-
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
border-color: #008a29;
}
-
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
border-color: #00bd38;
background: #00bd38 linear-gradient(180deg, #26c756, #00bd38) repeat-x;
}
-
.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.25);
}
-
.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
border-color: #008a29;
}
@@ -2128,7 +2061,6 @@ textarea.form-control {
.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
border-color: #008a29;
}
-
.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
border-color: #008a29;
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.25);
@@ -2150,15 +2082,13 @@ textarea.form-control {
display: none;
max-width: 100%;
padding: 0.25rem 0.5rem;
- margin-top: .1rem;
+ margin-top: 0.1rem;
font-size: 0.875rem;
line-height: 1.5;
color: #fff;
background-color: rgba(225, 55, 55, 0.9);
}
-
-.form-row > .col > .invalid-tooltip,
-.form-row > [class*="col-"] > .invalid-tooltip {
+.form-row > .col > .invalid-tooltip, .form-row > [class*=col-] > .invalid-tooltip {
left: 5px;
}
@@ -2177,7 +2107,6 @@ textarea.form-control {
background-position: right calc(0.375em + 0.1875rem) center;
background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
-
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
border-color: #e13737;
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.25);
@@ -2198,7 +2127,6 @@ textarea.form-control {
padding-right: calc(0.75em + 2.3125rem) !important;
background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e13737' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23e13737' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}
-
.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
border-color: #e13737;
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.25);
@@ -2207,7 +2135,6 @@ textarea.form-control {
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
color: #e13737;
}
-
.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
@@ -2217,20 +2144,16 @@ textarea.form-control {
.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
color: #e13737;
}
-
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
border-color: #e13737;
}
-
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
border-color: #e86363;
- background: #e86363 linear-gradient(180deg, #eb7b7b, #e86363) repeat-x;
+ background: #e86363 linear-gradient(180deg, #eb7a7a, #e86363) repeat-x;
}
-
.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.25);
}
-
.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
border-color: #e13737;
}
@@ -2238,7 +2161,6 @@ textarea.form-control {
.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
border-color: #e13737;
}
-
.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
border-color: #e13737;
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.25);
@@ -2249,11 +2171,9 @@ textarea.form-control {
flex-flow: row wrap;
align-items: center;
}
-
.form-inline .form-check {
width: 100%;
}
-
@media (min-width: 576px) {
.form-inline label {
display: flex;
@@ -2318,36 +2238,29 @@ textarea.form-control {
border-radius: 0;
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
-
@media (prefers-reduced-motion: reduce) {
.btn {
transition: none;
}
}
-
.btn:hover {
color: #212529;
text-decoration: none;
}
-
.btn:focus, .btn.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.btn.disabled, .btn:disabled {
opacity: 0.65;
box-shadow: none;
}
-
.btn:not(:disabled):not(.disabled) {
cursor: pointer;
}
-
.btn:not(:disabled):not(.disabled):active, .btn:not(:disabled):not(.disabled).active {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
-
.btn:not(:disabled):not(.disabled):active:focus, .btn:not(:disabled):not(.disabled).active:focus {
box-shadow: 0 0 0 0.2rem rgba(8, 51, 88, 0.25), inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
@@ -2363,37 +2276,30 @@ fieldset:disabled a.btn {
border-color: #083358;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-primary:hover {
color: #fff;
- background: #051f35 linear-gradient(180deg, #2a4053, #051f35) repeat-x;
+ background: #051f35 linear-gradient(180deg, #2b4153, #051f35) repeat-x;
border-color: #041829;
}
-
.btn-primary:focus, .btn-primary.focus {
color: #fff;
- background: #051f35 linear-gradient(180deg, #2a4053, #051f35) repeat-x;
+ background: #051f35 linear-gradient(180deg, #2b4153, #051f35) repeat-x;
border-color: #041829;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(45, 82, 113, 0.5);
}
-
.btn-primary.disabled, .btn-primary:disabled {
color: #fff;
background-color: #083358;
border-color: #083358;
background-image: none;
}
-
-.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
-.show > .btn-primary.dropdown-toggle {
+.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
color: #fff;
background-color: #041829;
background-image: none;
border-color: #03111e;
}
-
-.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
-.show > .btn-primary.dropdown-toggle:focus {
+.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(45, 82, 113, 0.5);
}
@@ -2403,37 +2309,30 @@ fieldset:disabled a.btn {
border-color: #b8b8b8;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-secondary:hover {
color: #212529;
- background: #a5a5a5 linear-gradient(180deg, #b2b2b2, #a5a5a5) repeat-x;
+ background: #a5a5a5 linear-gradient(180deg, #b3b3b3, #a5a5a5) repeat-x;
border-color: #9f9f9f;
}
-
.btn-secondary:focus, .btn-secondary.focus {
color: #212529;
- background: #a5a5a5 linear-gradient(180deg, #b2b2b2, #a5a5a5) repeat-x;
+ background: #a5a5a5 linear-gradient(180deg, #b3b3b3, #a5a5a5) repeat-x;
border-color: #9f9f9f;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(161, 162, 163, 0.5);
}
-
.btn-secondary.disabled, .btn-secondary:disabled {
color: #212529;
background-color: #b8b8b8;
border-color: #b8b8b8;
background-image: none;
}
-
-.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
-.show > .btn-secondary.dropdown-toggle {
+.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
color: #212529;
background-color: #9f9f9f;
background-image: none;
border-color: #989898;
}
-
-.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
-.show > .btn-secondary.dropdown-toggle:focus {
+.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(161, 162, 163, 0.5);
}
@@ -2443,37 +2342,30 @@ fieldset:disabled a.btn {
border-color: #008a29;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-success:hover {
color: #fff;
- background: #00641e linear-gradient(180deg, #267b3f, #00641e) repeat-x;
+ background: #00641e linear-gradient(180deg, #267b40, #00641e) repeat-x;
border-color: #00571a;
}
-
.btn-success:focus, .btn-success.focus {
color: #fff;
- background: #00641e linear-gradient(180deg, #267b3f, #00641e) repeat-x;
+ background: #00641e linear-gradient(180deg, #267b40, #00641e) repeat-x;
border-color: #00571a;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(38, 156, 73, 0.5);
}
-
.btn-success.disabled, .btn-success:disabled {
color: #fff;
background-color: #008a29;
border-color: #008a29;
background-image: none;
}
-
-.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
-.show > .btn-success.dropdown-toggle {
+.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
color: #fff;
background-color: #00571a;
background-image: none;
border-color: #004a16;
}
-
-.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
-.show > .btn-success.dropdown-toggle:focus {
+.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(38, 156, 73, 0.5);
}
@@ -2483,37 +2375,30 @@ fieldset:disabled a.btn {
border-color: #74dbef;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-info:hover {
color: #212529;
background: #52d2eb linear-gradient(180deg, #6cd9ee, #52d2eb) repeat-x;
border-color: #46cfea;
}
-
.btn-info:focus, .btn-info.focus {
color: #212529;
background: #52d2eb linear-gradient(180deg, #6cd9ee, #52d2eb) repeat-x;
border-color: #46cfea;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(104, 192, 209, 0.5);
}
-
.btn-info.disabled, .btn-info:disabled {
color: #212529;
background-color: #74dbef;
border-color: #74dbef;
background-image: none;
}
-
-.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
-.show > .btn-info.dropdown-toggle {
+.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
color: #212529;
background-color: #46cfea;
background-image: none;
border-color: #3bcce8;
}
-
-.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
-.show > .btn-info.dropdown-toggle:focus {
+.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(104, 192, 209, 0.5);
}
@@ -2523,37 +2408,30 @@ fieldset:disabled a.btn {
border-color: #e6d200;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-warning:hover {
color: #212529;
background: #c0af00 linear-gradient(180deg, #c9bb26, #c0af00) repeat-x;
border-color: #b3a300;
}
-
.btn-warning:focus, .btn-warning.focus {
color: #212529;
background: #c0af00 linear-gradient(180deg, #c9bb26, #c0af00) repeat-x;
border-color: #b3a300;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(200, 184, 6, 0.5);
}
-
.btn-warning.disabled, .btn-warning:disabled {
color: #212529;
background-color: #e6d200;
border-color: #e6d200;
background-image: none;
}
-
-.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
-.show > .btn-warning.dropdown-toggle {
+.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
color: #fff;
background-color: #b3a300;
background-image: none;
border-color: #a69800;
}
-
-.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
-.show > .btn-warning.dropdown-toggle:focus {
+.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(200, 184, 6, 0.5);
}
@@ -2563,37 +2441,30 @@ fieldset:disabled a.btn {
border-color: #e13737;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-danger:hover {
color: #fff;
background: #d22020 linear-gradient(180deg, #d94141, #d22020) repeat-x;
border-color: #c71e1e;
}
-
.btn-danger:focus, .btn-danger.focus {
color: #fff;
background: #d22020 linear-gradient(180deg, #d94141, #d22020) repeat-x;
border-color: #c71e1e;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(230, 85, 85, 0.5);
}
-
.btn-danger.disabled, .btn-danger:disabled {
color: #fff;
background-color: #e13737;
border-color: #e13737;
background-image: none;
}
-
-.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
-.show > .btn-danger.dropdown-toggle {
+.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
color: #fff;
background-color: #c71e1e;
background-image: none;
border-color: #bc1c1c;
}
-
-.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
-.show > .btn-danger.dropdown-toggle:focus {
+.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(230, 85, 85, 0.5);
}
@@ -2603,37 +2474,30 @@ fieldset:disabled a.btn {
border-color: #f4f4f4;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-light:hover {
color: #212529;
- background: #e1e1e1 linear-gradient(180deg, #e5e5e5, #e1e1e1) repeat-x;
+ background: #e1e1e1 linear-gradient(180deg, #e6e6e6, #e1e1e1) repeat-x;
border-color: #dbdbdb;
}
-
.btn-light:focus, .btn-light.focus {
color: #212529;
- background: #e1e1e1 linear-gradient(180deg, #e5e5e5, #e1e1e1) repeat-x;
+ background: #e1e1e1 linear-gradient(180deg, #e6e6e6, #e1e1e1) repeat-x;
border-color: #dbdbdb;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(212, 213, 214, 0.5);
}
-
.btn-light.disabled, .btn-light:disabled {
color: #212529;
background-color: #f4f4f4;
border-color: #f4f4f4;
background-image: none;
}
-
-.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
-.show > .btn-light.dropdown-toggle {
+.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
color: #212529;
background-color: #dbdbdb;
background-image: none;
border-color: #d4d4d4;
}
-
-.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
-.show > .btn-light.dropdown-toggle:focus {
+.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(212, 213, 214, 0.5);
}
@@ -2643,37 +2507,30 @@ fieldset:disabled a.btn {
border-color: #072247;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.btn-dark:hover {
color: #fff;
- background: #041124 linear-gradient(180deg, #293545, #041124) repeat-x;
+ background: #041124 linear-gradient(180deg, #2a3545, #041124) repeat-x;
border-color: #020c19;
}
-
.btn-dark:focus, .btn-dark.focus {
color: #fff;
- background: #041124 linear-gradient(180deg, #293545, #041124) repeat-x;
+ background: #041124 linear-gradient(180deg, #2a3545, #041124) repeat-x;
border-color: #020c19;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(44, 67, 99, 0.5);
}
-
.btn-dark.disabled, .btn-dark:disabled {
color: #fff;
background-color: #072247;
border-color: #072247;
background-image: none;
}
-
-.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
-.show > .btn-dark.dropdown-toggle {
+.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
color: #fff;
background-color: #020c19;
background-image: none;
border-color: #01060d;
}
-
-.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
-.show > .btn-dark.dropdown-toggle:focus {
+.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(44, 67, 99, 0.5);
}
@@ -2681,31 +2538,24 @@ fieldset:disabled a.btn {
color: #083358;
border-color: #083358;
}
-
.btn-outline-primary:hover {
color: #fff;
background-color: #083358;
border-color: #083358;
}
-
.btn-outline-primary:focus, .btn-outline-primary.focus {
box-shadow: 0 0 0 0.2rem rgba(8, 51, 88, 0.5);
}
-
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
color: #083358;
background-color: transparent;
}
-
-.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
-.show > .btn-outline-primary.dropdown-toggle {
+.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
color: #fff;
background-color: #083358;
border-color: #083358;
}
-
-.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-primary.dropdown-toggle:focus {
+.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(8, 51, 88, 0.5);
}
@@ -2713,31 +2563,24 @@ fieldset:disabled a.btn {
color: #b8b8b8;
border-color: #b8b8b8;
}
-
.btn-outline-secondary:hover {
color: #212529;
background-color: #b8b8b8;
border-color: #b8b8b8;
}
-
.btn-outline-secondary:focus, .btn-outline-secondary.focus {
box-shadow: 0 0 0 0.2rem rgba(184, 184, 184, 0.5);
}
-
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
color: #b8b8b8;
background-color: transparent;
}
-
-.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
-.show > .btn-outline-secondary.dropdown-toggle {
+.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle {
color: #212529;
background-color: #b8b8b8;
border-color: #b8b8b8;
}
-
-.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-secondary.dropdown-toggle:focus {
+.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(184, 184, 184, 0.5);
}
@@ -2745,31 +2588,24 @@ fieldset:disabled a.btn {
color: #008a29;
border-color: #008a29;
}
-
.btn-outline-success:hover {
color: #fff;
background-color: #008a29;
border-color: #008a29;
}
-
.btn-outline-success:focus, .btn-outline-success.focus {
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.5);
}
-
.btn-outline-success.disabled, .btn-outline-success:disabled {
color: #008a29;
background-color: transparent;
}
-
-.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
-.show > .btn-outline-success.dropdown-toggle {
+.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle {
color: #fff;
background-color: #008a29;
border-color: #008a29;
}
-
-.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-success.dropdown-toggle:focus {
+.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(0, 138, 41, 0.5);
}
@@ -2777,31 +2613,24 @@ fieldset:disabled a.btn {
color: #74dbef;
border-color: #74dbef;
}
-
.btn-outline-info:hover {
color: #212529;
background-color: #74dbef;
border-color: #74dbef;
}
-
.btn-outline-info:focus, .btn-outline-info.focus {
box-shadow: 0 0 0 0.2rem rgba(116, 219, 239, 0.5);
}
-
.btn-outline-info.disabled, .btn-outline-info:disabled {
color: #74dbef;
background-color: transparent;
}
-
-.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
-.show > .btn-outline-info.dropdown-toggle {
+.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
color: #212529;
background-color: #74dbef;
border-color: #74dbef;
}
-
-.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-info.dropdown-toggle:focus {
+.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(116, 219, 239, 0.5);
}
@@ -2809,31 +2638,24 @@ fieldset:disabled a.btn {
color: #e6d200;
border-color: #e6d200;
}
-
.btn-outline-warning:hover {
color: #212529;
background-color: #e6d200;
border-color: #e6d200;
}
-
.btn-outline-warning:focus, .btn-outline-warning.focus {
box-shadow: 0 0 0 0.2rem rgba(230, 210, 0, 0.5);
}
-
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
color: #e6d200;
background-color: transparent;
}
-
-.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
-.show > .btn-outline-warning.dropdown-toggle {
+.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle {
color: #212529;
background-color: #e6d200;
border-color: #e6d200;
}
-
-.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-warning.dropdown-toggle:focus {
+.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(230, 210, 0, 0.5);
}
@@ -2841,31 +2663,24 @@ fieldset:disabled a.btn {
color: #e13737;
border-color: #e13737;
}
-
.btn-outline-danger:hover {
color: #fff;
background-color: #e13737;
border-color: #e13737;
}
-
.btn-outline-danger:focus, .btn-outline-danger.focus {
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.5);
}
-
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
color: #e13737;
background-color: transparent;
}
-
-.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
-.show > .btn-outline-danger.dropdown-toggle {
+.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle {
color: #fff;
background-color: #e13737;
border-color: #e13737;
}
-
-.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-danger.dropdown-toggle:focus {
+.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(225, 55, 55, 0.5);
}
@@ -2873,31 +2688,24 @@ fieldset:disabled a.btn {
color: #f4f4f4;
border-color: #f4f4f4;
}
-
.btn-outline-light:hover {
color: #212529;
background-color: #f4f4f4;
border-color: #f4f4f4;
}
-
.btn-outline-light:focus, .btn-outline-light.focus {
box-shadow: 0 0 0 0.2rem rgba(244, 244, 244, 0.5);
}
-
.btn-outline-light.disabled, .btn-outline-light:disabled {
color: #f4f4f4;
background-color: transparent;
}
-
-.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
-.show > .btn-outline-light.dropdown-toggle {
+.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
color: #212529;
background-color: #f4f4f4;
border-color: #f4f4f4;
}
-
-.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-light.dropdown-toggle:focus {
+.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(244, 244, 244, 0.5);
}
@@ -2905,31 +2713,24 @@ fieldset:disabled a.btn {
color: #072247;
border-color: #072247;
}
-
.btn-outline-dark:hover {
color: #fff;
background-color: #072247;
border-color: #072247;
}
-
.btn-outline-dark:focus, .btn-outline-dark.focus {
box-shadow: 0 0 0 0.2rem rgba(7, 34, 71, 0.5);
}
-
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
color: #072247;
background-color: transparent;
}
-
-.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
-.show > .btn-outline-dark.dropdown-toggle {
+.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
color: #fff;
background-color: #072247;
border-color: #072247;
}
-
-.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
-.show > .btn-outline-dark.dropdown-toggle:focus {
+.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125), 0 0 0 0.2rem rgba(7, 34, 71, 0.5);
}
@@ -2938,16 +2739,13 @@ fieldset:disabled a.btn {
color: #083358;
text-decoration: none;
}
-
.btn-link:hover {
color: #020a12;
text-decoration: underline;
}
-
.btn-link:focus, .btn-link.focus {
text-decoration: underline;
}
-
.btn-link:disabled, .btn-link.disabled {
color: #6c757d;
pointer-events: none;
@@ -2971,27 +2769,24 @@ fieldset:disabled a.btn {
display: block;
width: 100%;
}
-
.btn-block + .btn-block {
margin-top: 0.5rem;
}
-input[type="submit"].btn-block,
-input[type="reset"].btn-block,
-input[type="button"].btn-block {
+input[type=submit].btn-block,
+input[type=reset].btn-block,
+input[type=button].btn-block {
width: 100%;
}
.fade {
transition: opacity 0.15s linear;
}
-
@media (prefers-reduced-motion: reduce) {
.fade {
transition: none;
}
}
-
.fade:not(.show) {
opacity: 0;
}
@@ -3006,19 +2801,16 @@ input[type="button"].btn-block {
overflow: hidden;
transition: height 0.35s ease;
}
-
@media (prefers-reduced-motion: reduce) {
.collapsing {
transition: none;
}
}
-
.collapsing.width {
width: 0;
height: auto;
transition: width 0.35s ease;
}
-
@media (prefers-reduced-motion: reduce) {
.collapsing.width {
transition: none;
@@ -3035,7 +2827,6 @@ input[type="button"].btn-block {
.dropdown-toggle {
white-space: nowrap;
}
-
.dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
@@ -3046,7 +2837,6 @@ input[type="button"].btn-block {
border-bottom: 0;
border-left: 0.3em solid transparent;
}
-
.dropdown-toggle:empty::after {
margin-left: 0;
}
@@ -3091,7 +2881,6 @@ input[type="button"].btn-block {
left: auto;
}
}
-
@media (min-width: 768px) {
.dropdown-menu-md-left {
right: auto;
@@ -3102,7 +2891,6 @@ input[type="button"].btn-block {
left: auto;
}
}
-
@media (min-width: 992px) {
.dropdown-menu-lg-left {
right: auto;
@@ -3113,7 +2901,6 @@ input[type="button"].btn-block {
left: auto;
}
}
-
@media (min-width: 1200px) {
.dropdown-menu-xl-left {
right: auto;
@@ -3124,14 +2911,12 @@ input[type="button"].btn-block {
left: auto;
}
}
-
.dropup .dropdown-menu {
top: auto;
bottom: 100%;
margin-top: 0;
margin-bottom: 0.125rem;
}
-
.dropup .dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
@@ -3142,7 +2927,6 @@ input[type="button"].btn-block {
border-bottom: 0.3em solid;
border-left: 0.3em solid transparent;
}
-
.dropup .dropdown-toggle:empty::after {
margin-left: 0;
}
@@ -3154,7 +2938,6 @@ input[type="button"].btn-block {
margin-top: 0;
margin-left: 0.125rem;
}
-
.dropright .dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
@@ -3165,11 +2948,9 @@ input[type="button"].btn-block {
border-bottom: 0.3em solid transparent;
border-left: 0.3em solid;
}
-
.dropright .dropdown-toggle:empty::after {
margin-left: 0;
}
-
.dropright .dropdown-toggle::after {
vertical-align: 0;
}
@@ -3181,18 +2962,15 @@ input[type="button"].btn-block {
margin-top: 0;
margin-right: 0.125rem;
}
-
.dropleft .dropdown-toggle::after {
display: inline-block;
margin-left: 0.255em;
vertical-align: 0.255em;
content: "";
}
-
.dropleft .dropdown-toggle::after {
display: none;
}
-
.dropleft .dropdown-toggle::before {
display: inline-block;
margin-right: 0.255em;
@@ -3202,16 +2980,14 @@ input[type="button"].btn-block {
border-right: 0.3em solid;
border-bottom: 0.3em solid transparent;
}
-
.dropleft .dropdown-toggle:empty::after {
margin-left: 0;
}
-
.dropleft .dropdown-toggle::before {
vertical-align: 0;
}
-.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
+.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] {
right: auto;
bottom: auto;
}
@@ -3235,19 +3011,16 @@ input[type="button"].btn-block {
background-color: transparent;
border: 0;
}
-
.dropdown-item:hover, .dropdown-item:focus {
color: #16181b;
text-decoration: none;
background: #e9ecef linear-gradient(180deg, #eceff1, #e9ecef) repeat-x;
}
-
.dropdown-item.active, .dropdown-item:active {
color: #fff;
text-decoration: none;
background: #083358 linear-gradient(180deg, #2d5271, #083358) repeat-x;
}
-
.dropdown-item.disabled, .dropdown-item:disabled {
color: #adb5bd;
pointer-events: none;
@@ -3280,18 +3053,15 @@ input[type="button"].btn-block {
display: inline-flex;
vertical-align: middle;
}
-
.btn-group > .btn,
.btn-group-vertical > .btn {
position: relative;
flex: 1 1 auto;
}
-
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
z-index: 1;
}
-
.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
@@ -3304,7 +3074,6 @@ input[type="button"].btn-block {
flex-wrap: wrap;
justify-content: flex-start;
}
-
.btn-toolbar .input-group {
width: auto;
}
@@ -3313,18 +3082,13 @@ input[type="button"].btn-block {
.btn-group > .btn-group:not(:first-child) {
margin-left: -1px;
}
-
.dropdown-toggle-split {
padding-right: 0.5625rem;
padding-left: 0.5625rem;
}
-
-.dropdown-toggle-split::after,
-.dropup .dropdown-toggle-split::after,
-.dropright .dropdown-toggle-split::after {
+.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after {
margin-left: 0;
}
-
.dropleft .dropdown-toggle-split::before {
margin-right: 0;
}
@@ -3342,7 +3106,6 @@ input[type="button"].btn-block {
.btn-group.show .dropdown-toggle {
box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
-
.btn-group.show .dropdown-toggle.btn-link {
box-shadow: none;
}
@@ -3352,26 +3115,22 @@ input[type="button"].btn-block {
align-items: flex-start;
justify-content: center;
}
-
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
width: 100%;
}
-
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
margin-top: -1px;
}
-
.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
margin-bottom: 0;
}
-
-.btn-group-toggle > .btn input[type="radio"],
-.btn-group-toggle > .btn input[type="checkbox"],
-.btn-group-toggle > .btn-group > .btn input[type="radio"],
-.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
+.btn-group-toggle > .btn input[type=radio],
+.btn-group-toggle > .btn input[type=checkbox],
+.btn-group-toggle > .btn-group > .btn input[type=radio],
+.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
position: absolute;
clip: rect(0, 0, 0, 0);
pointer-events: none;
@@ -3384,7 +3143,6 @@ input[type="button"].btn-block {
align-items: stretch;
width: 100%;
}
-
.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
@@ -3395,7 +3153,6 @@ input[type="button"].btn-block {
min-width: 0;
margin-bottom: 0;
}
-
.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
@@ -3410,38 +3167,31 @@ input[type="button"].btn-block {
.input-group > .custom-file + .custom-file {
margin-left: -1px;
}
-
.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
z-index: 3;
}
-
.input-group > .custom-file .custom-file-input:focus {
z-index: 4;
}
-
.input-group > .custom-file {
display: flex;
align-items: center;
}
-
.input-group-prepend,
.input-group-append {
display: flex;
}
-
.input-group-prepend .btn,
.input-group-append .btn {
position: relative;
z-index: 2;
}
-
.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
z-index: 3;
}
-
.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
@@ -3475,9 +3225,8 @@ input[type="button"].btn-block {
background-color: #e9ecef;
border: 1px solid #ced4da;
}
-
-.input-group-text input[type="radio"],
-.input-group-text input[type="checkbox"] {
+.input-group-text input[type=radio],
+.input-group-text input[type=checkbox] {
margin-top: 0;
}
@@ -3540,33 +3289,25 @@ input[type="button"].btn-block {
height: 1.25rem;
opacity: 0;
}
-
.custom-control-input:checked ~ .custom-control-label::before {
color: #fff;
border-color: #083358;
background: #083358 linear-gradient(180deg, #2d5271, #083358) repeat-x;
- box-shadow:;
}
-
.custom-control-input:focus ~ .custom-control-label::before {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
border-color: #1377cd;
}
-
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
color: #fff;
background-color: #2791eb;
border-color: #2791eb;
- box-shadow:;
}
-
.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
color: #6c757d;
}
-
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
background-color: #e9ecef;
}
@@ -3576,7 +3317,6 @@ input[type="button"].btn-block {
margin-bottom: 0;
vertical-align: top;
}
-
.custom-control-label::before {
position: absolute;
top: 0.25rem;
@@ -3590,7 +3330,6 @@ input[type="button"].btn-block {
border: 1px solid #adb5bd;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.custom-control-label::after {
position: absolute;
top: 0.25rem;
@@ -3599,27 +3338,22 @@ input[type="button"].btn-block {
width: 1rem;
height: 1rem;
content: "";
- background: 50% / 50% 50% no-repeat;
+ background: 50%/50% 50% no-repeat;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
-
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
border-color: #083358;
background: #083358 linear-gradient(180deg, #2d5271, #083358) repeat-x;
- box-shadow:;
}
-
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}
-
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
background: rgba(8, 51, 88, 0.5) linear-gradient(180deg, rgba(94, 122, 146, 0.575), rgba(8, 51, 88, 0.5)) repeat-x;
}
-
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
background: rgba(8, 51, 88, 0.5) linear-gradient(180deg, rgba(94, 122, 146, 0.575), rgba(8, 51, 88, 0.5)) repeat-x;
}
@@ -3627,11 +3361,9 @@ input[type="button"].btn-block {
.custom-radio .custom-control-label::before {
border-radius: 50%;
}
-
.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
-
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
background: rgba(8, 51, 88, 0.5) linear-gradient(180deg, rgba(94, 122, 146, 0.575), rgba(8, 51, 88, 0.5)) repeat-x;
}
@@ -3639,14 +3371,12 @@ input[type="button"].btn-block {
.custom-switch {
padding-left: 2.25rem;
}
-
.custom-switch .custom-control-label::before {
left: -2.25rem;
width: 1.75rem;
pointer-events: all;
border-radius: 0.5rem;
}
-
.custom-switch .custom-control-label::after {
top: calc(0.25rem + 2px);
left: calc(-2.25rem + 2px);
@@ -3656,18 +3386,15 @@ input[type="button"].btn-block {
border-radius: 0.5rem;
transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
-
@media (prefers-reduced-motion: reduce) {
.custom-switch .custom-control-label::after {
transition: none;
}
}
-
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
background-color: #fff;
transform: translateX(0.75rem);
}
-
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
background: rgba(8, 51, 88, 0.5) linear-gradient(180deg, rgba(94, 122, 146, 0.575), rgba(8, 51, 88, 0.5)) repeat-x;
}
@@ -3688,33 +3415,27 @@ input[type="button"].btn-block {
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075);
appearance: none;
}
-
.custom-select:focus {
border-color: #1377cd;
outline: 0;
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.custom-select:focus::-ms-value {
color: #495057;
background-color: #fff;
}
-
.custom-select[multiple], .custom-select[size]:not([size="1"]) {
height: auto;
padding-right: 0.75rem;
background-image: none;
}
-
.custom-select:disabled {
color: #6c757d;
background-color: #e9ecef;
}
-
.custom-select::-ms-expand {
display: none;
}
-
.custom-select:-moz-focusring {
color: transparent;
text-shadow: 0 0 0 #495057;
@@ -3753,21 +3474,16 @@ input[type="button"].btn-block {
overflow: hidden;
opacity: 0;
}
-
.custom-file-input:focus ~ .custom-file-label {
border-color: #1377cd;
box-shadow: 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
-.custom-file-input[disabled] ~ .custom-file-label,
-.custom-file-input:disabled ~ .custom-file-label {
+.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label {
background-color: #e9ecef;
}
-
.custom-file-input:lang(en) ~ .custom-file-label::after {
content: "Browse";
}
-
.custom-file-input ~ .custom-file-label[data-browse]::after {
content: attr(data-browse);
}
@@ -3788,7 +3504,6 @@ input[type="button"].btn-block {
border: 1px solid #ced4da;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
-
.custom-file-label::after {
position: absolute;
top: 0;
@@ -3812,27 +3527,21 @@ input[type="button"].btn-block {
background-color: transparent;
appearance: none;
}
-
.custom-range:focus {
outline: 0;
}
-
.custom-range:focus::-webkit-slider-thumb {
box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.custom-range:focus::-moz-range-thumb {
box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.custom-range:focus::-ms-thumb {
box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.custom-range::-moz-focus-outer {
border: 0;
}
-
.custom-range::-webkit-slider-thumb {
width: 1rem;
height: 1rem;
@@ -3843,17 +3552,14 @@ input[type="button"].btn-block {
transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
appearance: none;
}
-
@media (prefers-reduced-motion: reduce) {
.custom-range::-webkit-slider-thumb {
transition: none;
}
}
-
.custom-range::-webkit-slider-thumb:active {
- background: #2791eb linear-gradient(180deg, #48a1ee, #2791eb) repeat-x;
+ background: #2791eb linear-gradient(180deg, #47a2ee, #2791eb) repeat-x;
}
-
.custom-range::-webkit-slider-runnable-track {
width: 100%;
height: 0.5rem;
@@ -3863,7 +3569,6 @@ input[type="button"].btn-block {
border-color: transparent;
box-shadow: inset 0 0.25rem 0.25rem rgba(0, 0, 0, 0.1);
}
-
.custom-range::-moz-range-thumb {
width: 1rem;
height: 1rem;
@@ -3873,17 +3578,14 @@ input[type="button"].btn-block {
transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
appearance: none;
}
-
@media (prefers-reduced-motion: reduce) {
.custom-range::-moz-range-thumb {
transition: none;
}
}
-
.custom-range::-moz-range-thumb:active {
- background: #2791eb linear-gradient(180deg, #48a1ee, #2791eb) repeat-x;
+ background: #2791eb linear-gradient(180deg, #47a2ee, #2791eb) repeat-x;
}
-
.custom-range::-moz-range-track {
width: 100%;
height: 0.5rem;
@@ -3893,7 +3595,6 @@ input[type="button"].btn-block {
border-color: transparent;
box-shadow: inset 0 0.25rem 0.25rem rgba(0, 0, 0, 0.1);
}
-
.custom-range::-ms-thumb {
width: 1rem;
height: 1rem;
@@ -3906,17 +3607,14 @@ input[type="button"].btn-block {
transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
appearance: none;
}
-
@media (prefers-reduced-motion: reduce) {
.custom-range::-ms-thumb {
transition: none;
}
}
-
.custom-range::-ms-thumb:active {
- background: #2791eb linear-gradient(180deg, #48a1ee, #2791eb) repeat-x;
+ background: #2791eb linear-gradient(180deg, #47a2ee, #2791eb) repeat-x;
}
-
.custom-range::-ms-track {
width: 100%;
height: 0.5rem;
@@ -3927,32 +3625,25 @@ input[type="button"].btn-block {
border-width: 0.5rem;
box-shadow: inset 0 0.25rem 0.25rem rgba(0, 0, 0, 0.1);
}
-
.custom-range::-ms-fill-lower {
background-color: #dee2e6;
}
-
.custom-range::-ms-fill-upper {
margin-right: 15px;
background-color: #dee2e6;
}
-
.custom-range:disabled::-webkit-slider-thumb {
background-color: #adb5bd;
}
-
.custom-range:disabled::-webkit-slider-runnable-track {
cursor: default;
}
-
.custom-range:disabled::-moz-range-thumb {
background-color: #adb5bd;
}
-
.custom-range:disabled::-moz-range-track {
cursor: default;
}
-
.custom-range:disabled::-ms-thumb {
background-color: #adb5bd;
}
@@ -3962,7 +3653,6 @@ input[type="button"].btn-block {
.custom-select {
transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
-
@media (prefers-reduced-motion: reduce) {
.custom-control-label::before,
.custom-file-label,
@@ -3983,11 +3673,9 @@ input[type="button"].btn-block {
display: block;
padding: 0.5rem 1rem;
}
-
.nav-link:hover, .nav-link:focus {
text-decoration: none;
}
-
.nav-link.disabled {
color: #6c757d;
pointer-events: none;
@@ -3997,31 +3685,26 @@ input[type="button"].btn-block {
.nav-tabs {
border-bottom: 1px solid #dee2e6;
}
-
.nav-tabs .nav-link {
margin-bottom: -1px;
background-color: transparent;
border: 1px solid transparent;
}
-
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
isolation: isolate;
border-color: #e9ecef #e9ecef #dee2e6;
}
-
.nav-tabs .nav-link.disabled {
color: #6c757d;
background-color: transparent;
border-color: transparent;
}
-
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
color: #495057;
background-color: #fff;
border-color: #dee2e6 #dee2e6 #fff;
}
-
.nav-tabs .dropdown-menu {
margin-top: -1px;
}
@@ -4030,7 +3713,6 @@ input[type="button"].btn-block {
background: none;
border: 0;
}
-
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
color: #fff;
@@ -4053,7 +3735,6 @@ input[type="button"].btn-block {
.tab-content > .tab-pane {
display: none;
}
-
.tab-content > .active {
display: block;
}
@@ -4066,15 +3747,17 @@ input[type="button"].btn-block {
justify-content: space-between;
padding: 0.25rem 0.5rem;
}
-
.navbar .container,
-.navbar .container-fluid, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl {
+.navbar .container-fluid,
+.navbar .container-sm,
+.navbar .container-md,
+.navbar .container-lg,
+.navbar .container-xl {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
}
-
.navbar-brand {
display: inline-block;
padding-top: 0.3125rem;
@@ -4084,7 +3767,6 @@ input[type="button"].btn-block {
line-height: inherit;
white-space: nowrap;
}
-
.navbar-brand:hover, .navbar-brand:focus {
text-decoration: none;
}
@@ -4096,12 +3778,10 @@ input[type="button"].btn-block {
margin-bottom: 0;
list-style: none;
}
-
.navbar-nav .nav-link {
padding-right: 0;
padding-left: 0;
}
-
.navbar-nav .dropdown-menu {
position: static;
float: none;
@@ -4126,7 +3806,6 @@ input[type="button"].btn-block {
background-color: transparent;
border: 1px solid transparent;
}
-
.navbar-toggler:hover, .navbar-toggler:focus {
text-decoration: none;
}
@@ -4137,7 +3816,7 @@ input[type="button"].btn-block {
height: 1.5em;
vertical-align: middle;
content: "";
- background: 50% / 100% 100% no-repeat;
+ background: 50%/100% 100% no-repeat;
}
.navbar-nav-scroll {
@@ -4147,12 +3826,15 @@ input[type="button"].btn-block {
@media (max-width: 575.98px) {
.navbar-expand-sm > .container,
- .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
+ .navbar-expand-sm > .container-fluid,
+ .navbar-expand-sm > .container-sm,
+ .navbar-expand-sm > .container-md,
+ .navbar-expand-sm > .container-lg,
+ .navbar-expand-sm > .container-xl {
padding-right: 0;
padding-left: 0;
}
}
-
@media (min-width: 576px) {
.navbar-expand-sm {
flex-flow: row nowrap;
@@ -4165,11 +3847,15 @@ input[type="button"].btn-block {
position: absolute;
}
.navbar-expand-sm .navbar-nav .nav-link {
- padding-right: 0.5rem;
- padding-left: 0.5rem;
+ padding-right: 0.7rem;
+ padding-left: 0.7rem;
}
.navbar-expand-sm > .container,
- .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
+ .navbar-expand-sm > .container-fluid,
+ .navbar-expand-sm > .container-sm,
+ .navbar-expand-sm > .container-md,
+ .navbar-expand-sm > .container-lg,
+ .navbar-expand-sm > .container-xl {
flex-wrap: nowrap;
}
.navbar-expand-sm .navbar-nav-scroll {
@@ -4183,15 +3869,17 @@ input[type="button"].btn-block {
display: none;
}
}
-
@media (max-width: 767.98px) {
.navbar-expand-md > .container,
- .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
+ .navbar-expand-md > .container-fluid,
+ .navbar-expand-md > .container-sm,
+ .navbar-expand-md > .container-md,
+ .navbar-expand-md > .container-lg,
+ .navbar-expand-md > .container-xl {
padding-right: 0;
padding-left: 0;
}
}
-
@media (min-width: 768px) {
.navbar-expand-md {
flex-flow: row nowrap;
@@ -4204,11 +3892,15 @@ input[type="button"].btn-block {
position: absolute;
}
.navbar-expand-md .navbar-nav .nav-link {
- padding-right: 0.5rem;
- padding-left: 0.5rem;
+ padding-right: 0.7rem;
+ padding-left: 0.7rem;
}
.navbar-expand-md > .container,
- .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
+ .navbar-expand-md > .container-fluid,
+ .navbar-expand-md > .container-sm,
+ .navbar-expand-md > .container-md,
+ .navbar-expand-md > .container-lg,
+ .navbar-expand-md > .container-xl {
flex-wrap: nowrap;
}
.navbar-expand-md .navbar-nav-scroll {
@@ -4222,15 +3914,17 @@ input[type="button"].btn-block {
display: none;
}
}
-
@media (max-width: 991.98px) {
.navbar-expand-lg > .container,
- .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
+ .navbar-expand-lg > .container-fluid,
+ .navbar-expand-lg > .container-sm,
+ .navbar-expand-lg > .container-md,
+ .navbar-expand-lg > .container-lg,
+ .navbar-expand-lg > .container-xl {
padding-right: 0;
padding-left: 0;
}
}
-
@media (min-width: 992px) {
.navbar-expand-lg {
flex-flow: row nowrap;
@@ -4243,11 +3937,15 @@ input[type="button"].btn-block {
position: absolute;
}
.navbar-expand-lg .navbar-nav .nav-link {
- padding-right: 0.5rem;
- padding-left: 0.5rem;
+ padding-right: 0.7rem;
+ padding-left: 0.7rem;
}
.navbar-expand-lg > .container,
- .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
+ .navbar-expand-lg > .container-fluid,
+ .navbar-expand-lg > .container-sm,
+ .navbar-expand-lg > .container-md,
+ .navbar-expand-lg > .container-lg,
+ .navbar-expand-lg > .container-xl {
flex-wrap: nowrap;
}
.navbar-expand-lg .navbar-nav-scroll {
@@ -4261,15 +3959,17 @@ input[type="button"].btn-block {
display: none;
}
}
-
@media (max-width: 1199.98px) {
.navbar-expand-xl > .container,
- .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
+ .navbar-expand-xl > .container-fluid,
+ .navbar-expand-xl > .container-sm,
+ .navbar-expand-xl > .container-md,
+ .navbar-expand-xl > .container-lg,
+ .navbar-expand-xl > .container-xl {
padding-right: 0;
padding-left: 0;
}
}
-
@media (min-width: 1200px) {
.navbar-expand-xl {
flex-flow: row nowrap;
@@ -4282,11 +3982,15 @@ input[type="button"].btn-block {
position: absolute;
}
.navbar-expand-xl .navbar-nav .nav-link {
- padding-right: 0.5rem;
- padding-left: 0.5rem;
+ padding-right: 0.7rem;
+ padding-left: 0.7rem;
}
.navbar-expand-xl > .container,
- .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
+ .navbar-expand-xl > .container-fluid,
+ .navbar-expand-xl > .container-sm,
+ .navbar-expand-xl > .container-md,
+ .navbar-expand-xl > .container-lg,
+ .navbar-expand-xl > .container-xl {
flex-wrap: nowrap;
}
.navbar-expand-xl .navbar-nav-scroll {
@@ -4300,45 +4004,44 @@ input[type="button"].btn-block {
display: none;
}
}
-
.navbar-expand {
flex-flow: row nowrap;
justify-content: flex-start;
}
-
.navbar-expand > .container,
-.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
+.navbar-expand > .container-fluid,
+.navbar-expand > .container-sm,
+.navbar-expand > .container-md,
+.navbar-expand > .container-lg,
+.navbar-expand > .container-xl {
padding-right: 0;
padding-left: 0;
}
-
.navbar-expand .navbar-nav {
flex-direction: row;
}
-
.navbar-expand .navbar-nav .dropdown-menu {
position: absolute;
}
-
.navbar-expand .navbar-nav .nav-link {
- padding-right: 0.5rem;
- padding-left: 0.5rem;
+ padding-right: 0.7rem;
+ padding-left: 0.7rem;
}
-
.navbar-expand > .container,
-.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
+.navbar-expand > .container-fluid,
+.navbar-expand > .container-sm,
+.navbar-expand > .container-md,
+.navbar-expand > .container-lg,
+.navbar-expand > .container-xl {
flex-wrap: nowrap;
}
-
.navbar-expand .navbar-nav-scroll {
overflow: visible;
}
-
.navbar-expand .navbar-collapse {
display: flex !important;
flex-basis: auto;
}
-
.navbar-expand .navbar-toggler {
display: none;
}
@@ -4346,47 +4049,37 @@ input[type="button"].btn-block {
.navbar-light .navbar-brand {
color: rgba(0, 0, 0, 0.9);
}
-
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
color: rgba(0, 0, 0, 0.9);
}
-
.navbar-light .navbar-nav .nav-link {
color: rgba(0, 0, 0, 0.5);
}
-
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
color: rgba(0, 0, 0, 0.7);
}
-
.navbar-light .navbar-nav .nav-link.disabled {
color: rgba(0, 0, 0, 0.3);
}
-
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
color: rgba(0, 0, 0, 0.9);
}
-
.navbar-light .navbar-toggler {
color: rgba(0, 0, 0, 0.5);
border-color: none;
}
-
.navbar-light .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
-
.navbar-light .navbar-text {
color: rgba(0, 0, 0, 0.5);
}
-
.navbar-light .navbar-text a {
color: rgba(0, 0, 0, 0.9);
}
-
.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
color: rgba(0, 0, 0, 0.9);
}
@@ -4394,47 +4087,37 @@ input[type="button"].btn-block {
.navbar-dark .navbar-brand {
color: #fff;
}
-
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
color: #fff;
}
-
.navbar-dark .navbar-nav .nav-link {
color: rgba(255, 255, 255, 0.75);
}
-
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
color: rgba(255, 255, 255, 0.95);
}
-
.navbar-dark .navbar-nav .nav-link.disabled {
color: rgba(255, 255, 255, 0.25);
}
-
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
color: #fff;
}
-
.navbar-dark .navbar-toggler {
color: rgba(255, 255, 255, 0.75);
border-color: rgba(255, 255, 255, 0.1);
}
-
.navbar-dark .navbar-toggler-icon {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
-
.navbar-dark .navbar-text {
color: rgba(255, 255, 255, 0.75);
}
-
.navbar-dark .navbar-text a {
color: #fff;
}
-
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
color: #fff;
}
@@ -4449,25 +4132,20 @@ input[type="button"].btn-block {
background-clip: border-box;
border: 1px solid rgba(0, 0, 0, 0.125);
}
-
.card > hr {
margin-right: 0;
margin-left: 0;
}
-
.card > .list-group {
border-top: inherit;
border-bottom: inherit;
}
-
.card > .list-group:first-child {
border-top-width: 0;
}
-
.card > .list-group:last-child {
border-bottom-width: 0;
}
-
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
border-top: 0;
@@ -4495,7 +4173,6 @@ input[type="button"].btn-block {
.card-link:hover {
text-decoration: none;
}
-
.card-link + .card-link {
margin-left: 1.25rem;
}
@@ -4506,13 +4183,11 @@ input[type="button"].btn-block {
background-color: rgba(0, 0, 0, 0.03);
border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
-
.card-footer {
padding: 0.75rem 1.25rem;
background-color: rgba(0, 0, 0, 0.03);
border-top: 1px solid rgba(0, 0, 0, 0.125);
}
-
.card-header-tabs {
margin-right: -0.625rem;
margin-bottom: -0.75rem;
@@ -4544,7 +4219,6 @@ input[type="button"].btn-block {
.card-deck .card {
margin-bottom: 15px;
}
-
@media (min-width: 576px) {
.card-deck {
display: flex;
@@ -4563,7 +4237,6 @@ input[type="button"].btn-block {
.card-group > .card {
margin-bottom: 15px;
}
-
@media (min-width: 576px) {
.card-group {
display: flex;
@@ -4582,7 +4255,6 @@ input[type="button"].btn-block {
.card-columns .card {
margin-bottom: 0.75rem;
}
-
@media (min-width: 576px) {
.card-columns {
column-count: 3;
@@ -4599,15 +4271,12 @@ input[type="button"].btn-block {
.accordion {
overflow-anchor: none;
}
-
.accordion > .card {
overflow: hidden;
}
-
.accordion > .card:not(:last-of-type) {
border-bottom: 0;
}
-
.accordion > .card > .card-header {
margin-bottom: -1px;
}
@@ -4624,22 +4293,18 @@ input[type="button"].btn-block {
.breadcrumb-item + .breadcrumb-item {
padding-left: 0.5rem;
}
-
.breadcrumb-item + .breadcrumb-item::before {
float: left;
padding-right: 0.5rem;
color: #6c757d;
content: "/";
}
-
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: underline;
}
-
.breadcrumb-item + .breadcrumb-item:hover::before {
text-decoration: none;
}
-
.breadcrumb-item.active {
color: #6c757d;
}
@@ -4660,7 +4325,6 @@ input[type="button"].btn-block {
background-color: #fff;
border: 1px solid #dee2e6;
}
-
.page-link:hover {
z-index: 2;
color: #020a12;
@@ -4668,7 +4332,6 @@ input[type="button"].btn-block {
background-color: #e9ecef;
border-color: #dee2e6;
}
-
.page-link:focus {
z-index: 3;
outline: 0;
@@ -4678,14 +4341,12 @@ input[type="button"].btn-block {
.page-item:first-child .page-link {
margin-left: 0;
}
-
.page-item.active .page-link {
z-index: 3;
color: #fff;
background-color: #083358;
border-color: #083358;
}
-
.page-item.disabled .page-link {
color: #6c757d;
pointer-events: none;
@@ -4699,13 +4360,11 @@ input[type="button"].btn-block {
font-size: 1.25rem;
line-height: 1.5;
}
-
.pagination-sm .page-link {
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
line-height: 1.5;
}
-
.badge {
display: inline-block;
padding: 0.25em 0.4em;
@@ -4717,13 +4376,11 @@ input[type="button"].btn-block {
vertical-align: baseline;
transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
-
@media (prefers-reduced-motion: reduce) {
.badge {
transition: none;
}
}
-
a.badge:hover, a.badge:focus {
text-decoration: none;
}
@@ -4746,12 +4403,10 @@ a.badge:hover, a.badge:focus {
color: #fff;
background-color: #083358;
}
-
a.badge-primary:hover, a.badge-primary:focus {
color: #fff;
background-color: #041829;
}
-
a.badge-primary:focus, a.badge-primary.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(8, 51, 88, 0.5);
@@ -4761,12 +4416,10 @@ a.badge-primary:focus, a.badge-primary.focus {
color: #212529;
background-color: #b8b8b8;
}
-
a.badge-secondary:hover, a.badge-secondary:focus {
color: #212529;
background-color: #9f9f9f;
}
-
a.badge-secondary:focus, a.badge-secondary.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(184, 184, 184, 0.5);
@@ -4776,12 +4429,10 @@ a.badge-secondary:focus, a.badge-secondary.focus {
color: #fff;
background-color: #008a29;
}
-
a.badge-success:hover, a.badge-success:focus {
color: #fff;
background-color: #00571a;
}
-
a.badge-success:focus, a.badge-success.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.5);
@@ -4791,12 +4442,10 @@ a.badge-success:focus, a.badge-success.focus {
color: #212529;
background-color: #74dbef;
}
-
a.badge-info:hover, a.badge-info:focus {
color: #212529;
background-color: #46cfea;
}
-
a.badge-info:focus, a.badge-info.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(116, 219, 239, 0.5);
@@ -4806,12 +4455,10 @@ a.badge-info:focus, a.badge-info.focus {
color: #212529;
background-color: #e6d200;
}
-
a.badge-warning:hover, a.badge-warning:focus {
color: #212529;
background-color: #b3a300;
}
-
a.badge-warning:focus, a.badge-warning.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(230, 210, 0, 0.5);
@@ -4821,12 +4468,10 @@ a.badge-warning:focus, a.badge-warning.focus {
color: #fff;
background-color: #e13737;
}
-
a.badge-danger:hover, a.badge-danger:focus {
color: #fff;
background-color: #c71e1e;
}
-
a.badge-danger:focus, a.badge-danger.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.5);
@@ -4836,12 +4481,10 @@ a.badge-danger:focus, a.badge-danger.focus {
color: #212529;
background-color: #f4f4f4;
}
-
a.badge-light:hover, a.badge-light:focus {
color: #212529;
background-color: #dbdbdb;
}
-
a.badge-light:focus, a.badge-light.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(244, 244, 244, 0.5);
@@ -4851,12 +4494,10 @@ a.badge-light:focus, a.badge-light.focus {
color: #fff;
background-color: #072247;
}
-
a.badge-dark:hover, a.badge-dark:focus {
color: #fff;
background-color: #020c19;
}
-
a.badge-dark:focus, a.badge-dark.focus {
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(7, 34, 71, 0.5);
@@ -4867,7 +4508,6 @@ a.badge-dark:focus, a.badge-dark.focus {
margin-bottom: 2rem;
background-color: #e9ecef;
}
-
@media (min-width: 576px) {
.jumbotron {
padding: 4rem 2rem;
@@ -4897,7 +4537,6 @@ a.badge-dark:focus, a.badge-dark.focus {
.alert-dismissible {
padding-right: 4rem;
}
-
.alert-dismissible .close {
position: absolute;
top: 0;
@@ -4912,11 +4551,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #ced6de linear-gradient(180deg, #d5dce3, #ced6de) repeat-x;
border-color: #bac6d0;
}
-
.alert-primary hr {
border-top-color: #abb9c6;
}
-
.alert-primary .alert-link {
color: black;
}
@@ -4926,11 +4563,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #f1f1f1 linear-gradient(180deg, #f3f3f3, #f1f1f1) repeat-x;
border-color: #ebebeb;
}
-
.alert-secondary hr {
border-top-color: #dedede;
}
-
.alert-secondary .alert-link {
color: #474747;
}
@@ -4940,11 +4575,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #cce8d4 linear-gradient(180deg, #d4ebda, #cce8d4) repeat-x;
border-color: #b8dec3;
}
-
.alert-success hr {
border-top-color: #a7d6b4;
}
-
.alert-success .alert-link {
color: #001506;
}
@@ -4954,11 +4587,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #e3f8fc linear-gradient(180deg, #e7f9fc, #e3f8fc) repeat-x;
border-color: #d8f5fb;
}
-
.alert-info hr {
border-top-color: #c1eff9;
}
-
.alert-info .alert-link {
color: #2b525a;
}
@@ -4968,11 +4599,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #faf6cc linear-gradient(180deg, #fbf7d4, #faf6cc) repeat-x;
border-color: #f8f2b8;
}
-
.alert-warning hr {
border-top-color: #f6eea1;
}
-
.alert-warning .alert-link {
color: #453f00;
}
@@ -4982,11 +4611,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #f9d7d7 linear-gradient(180deg, #fadddd, #f9d7d7) repeat-x;
border-color: #f7c7c7;
}
-
.alert-danger hr {
border-top-color: #f4b1b1;
}
-
.alert-danger .alert-link {
color: #4c1313;
}
@@ -4996,11 +4623,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #fdfdfd linear-gradient(180deg, #fdfdfd, #fdfdfd) repeat-x;
border-color: #fcfcfc;
}
-
.alert-light hr {
border-top-color: #efefef;
}
-
.alert-light .alert-link {
color: #666666;
}
@@ -5010,11 +4635,9 @@ a.badge-dark:focus, a.badge-dark.focus {
background: #cdd3da linear-gradient(180deg, #d5dae0, #cdd3da) repeat-x;
border-color: #bac1cb;
}
-
.alert-dark hr {
border-top-color: #abb4c0;
}
-
.alert-dark .alert-link {
color: black;
}
@@ -5027,7 +4650,6 @@ a.badge-dark:focus, a.badge-dark.focus {
background-position: 0 0;
}
}
-
.progress {
display: flex;
height: 1rem;
@@ -5049,7 +4671,6 @@ a.badge-dark:focus, a.badge-dark.focus {
background-color: #083358;
transition: width 0.6s ease;
}
-
@media (prefers-reduced-motion: reduce) {
.progress-bar {
transition: none;
@@ -5064,7 +4685,6 @@ a.badge-dark:focus, a.badge-dark.focus {
.progress-bar-animated {
animation: 1s linear infinite progress-bar-stripes;
}
-
@media (prefers-reduced-motion: reduce) {
.progress-bar-animated {
animation: none;
@@ -5092,14 +4712,12 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #495057;
text-align: inherit;
}
-
.list-group-item-action:hover, .list-group-item-action:focus {
z-index: 1;
color: #495057;
text-decoration: none;
background-color: #f8f9fa;
}
-
.list-group-item-action:active {
color: #212529;
background-color: #e9ecef;
@@ -5112,24 +4730,20 @@ a.badge-dark:focus, a.badge-dark.focus {
background-color: #fff;
border: 1px solid rgba(0, 0, 0, 0.125);
}
-
.list-group-item.disabled, .list-group-item:disabled {
color: #6c757d;
pointer-events: none;
background-color: #fff;
}
-
.list-group-item.active {
z-index: 2;
color: #fff;
background-color: #083358;
border-color: #083358;
}
-
.list-group-item + .list-group-item {
border-top-width: 0;
}
-
.list-group-item + .list-group-item.active {
margin-top: -1px;
border-top-width: 1px;
@@ -5138,16 +4752,13 @@ a.badge-dark:focus, a.badge-dark.focus {
.list-group-horizontal {
flex-direction: row;
}
-
.list-group-horizontal > .list-group-item.active {
margin-top: 0;
}
-
.list-group-horizontal > .list-group-item + .list-group-item {
border-top-width: 1px;
border-left-width: 0;
}
-
.list-group-horizontal > .list-group-item + .list-group-item.active {
margin-left: -1px;
border-left-width: 1px;
@@ -5169,7 +4780,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-left-width: 1px;
}
}
-
@media (min-width: 768px) {
.list-group-horizontal-md {
flex-direction: row;
@@ -5186,7 +4796,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-left-width: 1px;
}
}
-
@media (min-width: 992px) {
.list-group-horizontal-lg {
flex-direction: row;
@@ -5203,7 +4812,6 @@ a.badge-dark:focus, a.badge-dark.focus {
border-left-width: 1px;
}
}
-
@media (min-width: 1200px) {
.list-group-horizontal-xl {
flex-direction: row;
@@ -5220,11 +4828,9 @@ a.badge-dark:focus, a.badge-dark.focus {
border-left-width: 1px;
}
}
-
.list-group-flush > .list-group-item {
border-width: 0 0 1px;
}
-
.list-group-flush > .list-group-item:last-child {
border-bottom-width: 0;
}
@@ -5233,12 +4839,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #041b2e;
background-color: #bac6d0;
}
-
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
color: #041b2e;
background-color: #abb9c6;
}
-
.list-group-item-primary.list-group-item-action.active {
color: #fff;
background-color: #041b2e;
@@ -5249,12 +4853,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #606060;
background-color: #ebebeb;
}
-
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
color: #606060;
background-color: #dedede;
}
-
.list-group-item-secondary.list-group-item-action.active {
color: #fff;
background-color: #606060;
@@ -5265,12 +4867,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #004815;
background-color: #b8dec3;
}
-
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
color: #004815;
background-color: #a7d6b4;
}
-
.list-group-item-success.list-group-item-action.active {
color: #fff;
background-color: #004815;
@@ -5281,12 +4881,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #3c727c;
background-color: #d8f5fb;
}
-
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
color: #3c727c;
background-color: #c1eff9;
}
-
.list-group-item-info.list-group-item-action.active {
color: #fff;
background-color: #3c727c;
@@ -5297,12 +4895,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #786d00;
background-color: #f8f2b8;
}
-
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
color: #786d00;
background-color: #f6eea1;
}
-
.list-group-item-warning.list-group-item-action.active {
color: #fff;
background-color: #786d00;
@@ -5313,12 +4909,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #751d1d;
background-color: #f7c7c7;
}
-
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
color: #751d1d;
background-color: #f4b1b1;
}
-
.list-group-item-danger.list-group-item-action.active {
color: #fff;
background-color: #751d1d;
@@ -5329,12 +4923,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #7f7f7f;
background-color: #fcfcfc;
}
-
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
color: #7f7f7f;
background-color: #efefef;
}
-
.list-group-item-light.list-group-item-action.active {
color: #fff;
background-color: #7f7f7f;
@@ -5345,12 +4937,10 @@ a.badge-dark:focus, a.badge-dark.focus {
color: #041225;
background-color: #bac1cb;
}
-
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
color: #041225;
background-color: #abb4c0;
}
-
.list-group-item-dark.list-group-item-action.active {
color: #fff;
background-color: #041225;
@@ -5364,16 +4954,14 @@ a.badge-dark:focus, a.badge-dark.focus {
line-height: 1;
color: #000;
text-shadow: 0 1px 0 #fff;
- opacity: .5;
+ opacity: 0.5;
}
-
.close:hover {
color: #000;
text-decoration: none;
}
-
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
- opacity: .75;
+ opacity: 0.75;
}
button.close {
@@ -5396,20 +4984,16 @@ a.close.disabled {
box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
opacity: 0;
}
-
.toast:not(:last-child) {
margin-bottom: 0.75rem;
}
-
.toast.showing {
opacity: 1;
}
-
.toast.show {
display: block;
opacity: 1;
}
-
.toast.hide {
display: none;
}
@@ -5431,7 +5015,6 @@ a.close.disabled {
.modal-open {
overflow: hidden;
}
-
.modal-open .modal {
overflow-x: hidden;
overflow-y: auto;
@@ -5455,22 +5038,18 @@ a.close.disabled {
margin: 0.5rem;
pointer-events: none;
}
-
.modal.fade .modal-dialog {
transition: transform 0.3s ease-out;
transform: translate(0, -50px);
}
-
@media (prefers-reduced-motion: reduce) {
.modal.fade .modal-dialog {
transition: none;
}
}
-
.modal.show .modal-dialog {
transform: none;
}
-
.modal.modal-static .modal-dialog {
transform: scale(1.02);
}
@@ -5479,17 +5058,14 @@ a.close.disabled {
display: flex;
max-height: calc(100% - 1rem);
}
-
.modal-dialog-scrollable .modal-content {
max-height: calc(100vh - 1rem);
overflow: hidden;
}
-
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
flex-shrink: 0;
}
-
.modal-dialog-scrollable .modal-body {
overflow-y: auto;
}
@@ -5499,24 +5075,20 @@ a.close.disabled {
align-items: center;
min-height: calc(100% - 1rem);
}
-
.modal-dialog-centered::before {
display: block;
height: calc(100vh - 1rem);
height: min-content;
content: "";
}
-
.modal-dialog-centered.modal-dialog-scrollable {
flex-direction: column;
justify-content: center;
height: 100%;
}
-
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
max-height: none;
}
-
.modal-dialog-centered.modal-dialog-scrollable::before {
content: none;
}
@@ -5543,11 +5115,9 @@ a.close.disabled {
height: 100vh;
background-color: #000;
}
-
.modal-backdrop.fade {
opacity: 0;
}
-
.modal-backdrop.show {
opacity: 0.5;
}
@@ -5559,7 +5129,6 @@ a.close.disabled {
padding: 1rem 1rem;
border-bottom: 1px solid #e3e3e3;
}
-
.modal-header .close {
padding: 1rem 1rem;
margin: -1rem -1rem -1rem auto;
@@ -5584,7 +5153,6 @@ a.close.disabled {
padding: 0.75rem;
border-top: 1px solid #e3e3e3;
}
-
.modal-footer > * {
margin: 0.25rem;
}
@@ -5622,20 +5190,17 @@ a.close.disabled {
max-width: 300px;
}
}
-
@media (min-width: 992px) {
.modal-lg,
.modal-xl {
max-width: 800px;
}
}
-
@media (min-width: 1200px) {
.modal-xl {
max-width: 1140px;
}
}
-
.tooltip {
position: absolute;
z-index: 1070;
@@ -5659,18 +5224,15 @@ a.close.disabled {
word-wrap: break-word;
opacity: 0;
}
-
.tooltip.show {
opacity: 0.9;
}
-
.tooltip .arrow {
position: absolute;
display: block;
width: 0.8rem;
height: 0.4rem;
}
-
.tooltip .arrow::before {
position: absolute;
content: "";
@@ -5678,61 +5240,53 @@ a.close.disabled {
border-style: solid;
}
-.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
+.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] {
padding: 0.4rem 0;
}
-
-.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
+.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=top] .arrow {
bottom: 0;
}
-
-.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
+.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before {
top: 0;
border-width: 0.4rem 0.4rem 0;
border-top-color: #000;
}
-.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
+.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] {
padding: 0 0.4rem;
}
-
-.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
+.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=right] .arrow {
left: 0;
width: 0.4rem;
height: 0.8rem;
}
-
-.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
+.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before {
right: 0;
border-width: 0.4rem 0.4rem 0.4rem 0;
border-right-color: #000;
}
-.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
+.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] {
padding: 0.4rem 0;
}
-
-.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
+.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow {
top: 0;
}
-
-.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
+.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before {
bottom: 0;
border-width: 0 0.4rem 0.4rem;
border-bottom-color: #000;
}
-.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
+.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] {
padding: 0 0.4rem;
}
-
-.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
+.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=left] .arrow {
right: 0;
width: 0.4rem;
height: 0.8rem;
}
-
-.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
+.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before {
left: 0;
border-width: 0.4rem 0 0.4rem 0.4rem;
border-left-color: #000;
@@ -5774,7 +5328,6 @@ a.close.disabled {
border: 1px solid rgba(0, 0, 0, 0.2);
box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.2);
}
-
.popover .arrow {
position: absolute;
display: block;
@@ -5782,7 +5335,6 @@ a.close.disabled {
height: 0.5rem;
margin: 0 0.3rem;
}
-
.popover .arrow::before, .popover .arrow::after {
position: absolute;
display: block;
@@ -5791,70 +5343,60 @@ a.close.disabled {
border-style: solid;
}
-.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
+.bs-popover-top, .bs-popover-auto[x-placement^=top] {
margin-bottom: 0.5rem;
}
-
-.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
+.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow {
bottom: calc(-0.5rem - 1px);
}
-
-.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
+.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before {
bottom: 0;
border-width: 0.5rem 0.5rem 0;
border-top-color: rgba(0, 0, 0, 0.25);
}
-
-.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
+.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after {
bottom: 1px;
border-width: 0.5rem 0.5rem 0;
border-top-color: #fff;
}
-.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
+.bs-popover-right, .bs-popover-auto[x-placement^=right] {
margin-left: 0.5rem;
}
-
-.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
+.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow {
left: calc(-0.5rem - 1px);
width: 0.5rem;
height: 1rem;
margin: 0.3rem 0;
}
-
-.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
+.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before {
left: 0;
border-width: 0.5rem 0.5rem 0.5rem 0;
border-right-color: rgba(0, 0, 0, 0.25);
}
-
-.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
+.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after {
left: 1px;
border-width: 0.5rem 0.5rem 0.5rem 0;
border-right-color: #fff;
}
-.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
+.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] {
margin-top: 0.5rem;
}
-
-.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
+.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow {
top: calc(-0.5rem - 1px);
}
-
-.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
+.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before {
top: 0;
border-width: 0 0.5rem 0.5rem 0.5rem;
border-bottom-color: rgba(0, 0, 0, 0.25);
}
-
-.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
+.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after {
top: 1px;
border-width: 0 0.5rem 0.5rem 0.5rem;
border-bottom-color: #fff;
}
-
-.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
+.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before {
position: absolute;
top: 0;
left: 50%;
@@ -5865,24 +5407,21 @@ a.close.disabled {
border-bottom: 1px solid #f7f7f7;
}
-.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
+.bs-popover-left, .bs-popover-auto[x-placement^=left] {
margin-right: 0.5rem;
}
-
-.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
+.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow {
right: calc(-0.5rem - 1px);
width: 0.5rem;
height: 1rem;
margin: 0.3rem 0;
}
-
-.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
+.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before {
right: 0;
border-width: 0.5rem 0 0.5rem 0.5rem;
border-left-color: rgba(0, 0, 0, 0.25);
}
-
-.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
+.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after {
right: 1px;
border-width: 0.5rem 0 0.5rem 0.5rem;
border-left-color: #fff;
@@ -5895,7 +5434,6 @@ a.close.disabled {
background-color: #f7f7f7;
border-bottom: 1px solid #ebebeb;
}
-
.popover-header:empty {
display: none;
}
@@ -5918,7 +5456,6 @@ a.close.disabled {
width: 100%;
overflow: hidden;
}
-
.carousel-inner::after {
display: block;
clear: both;
@@ -5934,7 +5471,6 @@ a.close.disabled {
backface-visibility: hidden;
transition: transform 0.6s ease-in-out;
}
-
@media (prefers-reduced-motion: reduce) {
.carousel-item {
transition: none;
@@ -5962,21 +5498,18 @@ a.close.disabled {
transition-property: opacity;
transform: none;
}
-
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
z-index: 1;
opacity: 1;
}
-
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
z-index: 0;
opacity: 0;
transition: opacity 0s 0.6s;
}
-
@media (prefers-reduced-motion: reduce) {
.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
@@ -6002,14 +5535,12 @@ a.close.disabled {
opacity: 0.5;
transition: opacity 0.15s ease;
}
-
@media (prefers-reduced-motion: reduce) {
.carousel-control-prev,
.carousel-control-next {
transition: none;
}
}
-
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
@@ -6034,7 +5565,7 @@ a.close.disabled {
display: inline-block;
width: 20px;
height: 20px;
- background: 50% / 100% 100% no-repeat;
+ background: 50%/100% 100% no-repeat;
}
.carousel-control-prev-icon {
@@ -6058,7 +5589,6 @@ a.close.disabled {
margin-left: 15%;
list-style: none;
}
-
.carousel-indicators li {
box-sizing: content-box;
flex: 0 1 auto;
@@ -6072,16 +5602,14 @@ a.close.disabled {
background-clip: padding-box;
border-top: 10px solid transparent;
border-bottom: 10px solid transparent;
- opacity: .5;
+ opacity: 0.5;
transition: opacity 0.6s ease;
}
-
@media (prefers-reduced-motion: reduce) {
.carousel-indicators li {
transition: none;
}
}
-
.carousel-indicators .active {
opacity: 1;
}
@@ -6103,7 +5631,6 @@ a.close.disabled {
transform: rotate(360deg);
}
}
-
.spinner-border {
display: inline-block;
width: 2rem;
@@ -6112,7 +5639,7 @@ a.close.disabled {
border: 0.25em solid currentcolor;
border-right-color: transparent;
border-radius: 50%;
- animation: .75s linear infinite spinner-border;
+ animation: 0.75s linear infinite spinner-border;
}
.spinner-border-sm {
@@ -6130,7 +5657,6 @@ a.close.disabled {
transform: none;
}
}
-
.spinner-grow {
display: inline-block;
width: 2rem;
@@ -6139,7 +5665,7 @@ a.close.disabled {
background-color: currentcolor;
border-radius: 50%;
opacity: 0;
- animation: .75s linear infinite spinner-grow;
+ animation: 0.75s linear infinite spinner-grow;
}
.spinner-grow-sm {
@@ -6153,7 +5679,6 @@ a.close.disabled {
animation-duration: 1.5s;
}
}
-
.align-baseline {
vertical-align: baseline !important;
}
@@ -6489,7 +6014,6 @@ button.bg-dark:focus {
display: inline-flex !important;
}
}
-
@media (min-width: 768px) {
.d-md-none {
display: none !important;
@@ -6519,7 +6043,6 @@ button.bg-dark:focus {
display: inline-flex !important;
}
}
-
@media (min-width: 992px) {
.d-lg-none {
display: none !important;
@@ -6549,7 +6072,6 @@ button.bg-dark:focus {
display: inline-flex !important;
}
}
-
@media (min-width: 1200px) {
.d-xl-none {
display: none !important;
@@ -6579,7 +6101,6 @@ button.bg-dark:focus {
display: inline-flex !important;
}
}
-
@media print {
.d-print-none {
display: none !important;
@@ -6609,7 +6130,6 @@ button.bg-dark:focus {
display: inline-flex !important;
}
}
-
.embed-responsive {
position: relative;
display: block;
@@ -6617,12 +6137,10 @@ button.bg-dark:focus {
padding: 0;
overflow: hidden;
}
-
.embed-responsive::before {
display: block;
content: "";
}
-
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
@@ -6638,7 +6156,7 @@ button.bg-dark:focus {
}
.embed-responsive-21by9::before {
- padding-top: 42.857143%;
+ padding-top: 42.85714286%;
}
.embed-responsive-16by9::before {
@@ -6893,7 +6411,6 @@ button.bg-dark:focus {
align-self: stretch !important;
}
}
-
@media (min-width: 768px) {
.flex-md-row {
flex-direction: row !important;
@@ -6998,7 +6515,6 @@ button.bg-dark:focus {
align-self: stretch !important;
}
}
-
@media (min-width: 992px) {
.flex-lg-row {
flex-direction: row !important;
@@ -7103,7 +6619,6 @@ button.bg-dark:focus {
align-self: stretch !important;
}
}
-
@media (min-width: 1200px) {
.flex-xl-row {
flex-direction: row !important;
@@ -7208,7 +6723,6 @@ button.bg-dark:focus {
align-self: stretch !important;
}
}
-
.float-left {
float: left !important;
}
@@ -7232,7 +6746,6 @@ button.bg-dark:focus {
float: none !important;
}
}
-
@media (min-width: 768px) {
.float-md-left {
float: left !important;
@@ -7244,7 +6757,6 @@ button.bg-dark:focus {
float: none !important;
}
}
-
@media (min-width: 992px) {
.float-lg-left {
float: left !important;
@@ -7256,7 +6768,6 @@ button.bg-dark:focus {
float: none !important;
}
}
-
@media (min-width: 1200px) {
.float-xl-left {
float: left !important;
@@ -7268,7 +6779,6 @@ button.bg-dark:focus {
float: none !important;
}
}
-
.user-select-all {
user-select: all !important;
}
@@ -8210,7 +7720,6 @@ button.bg-dark:focus {
margin-left: auto !important;
}
}
-
@media (min-width: 768px) {
.m-md-0 {
margin: 0 !important;
@@ -8555,7 +8064,6 @@ button.bg-dark:focus {
margin-left: auto !important;
}
}
-
@media (min-width: 992px) {
.m-lg-0 {
margin: 0 !important;
@@ -8900,7 +8408,6 @@ button.bg-dark:focus {
margin-left: auto !important;
}
}
-
@media (min-width: 1200px) {
.m-xl-0 {
margin: 0 !important;
@@ -9245,7 +8752,6 @@ button.bg-dark:focus {
margin-left: auto !important;
}
}
-
.stretched-link::after {
position: absolute;
top: 0;
@@ -9303,7 +8809,6 @@ button.bg-dark:focus {
text-align: center !important;
}
}
-
@media (min-width: 768px) {
.text-md-left {
text-align: left !important;
@@ -9315,7 +8820,6 @@ button.bg-dark:focus {
text-align: center !important;
}
}
-
@media (min-width: 992px) {
.text-lg-left {
text-align: left !important;
@@ -9327,7 +8831,6 @@ button.bg-dark:focus {
text-align: center !important;
}
}
-
@media (min-width: 1200px) {
.text-xl-left {
text-align: left !important;
@@ -9339,7 +8842,6 @@ button.bg-dark:focus {
text-align: center !important;
}
}
-
.text-lowercase {
text-transform: lowercase !important;
}
@@ -9564,7 +9066,6 @@ a.text-dark:hover, a.text-dark:focus {
border-color: #e3e3e3;
}
}
-
.select2-container {
box-sizing: border-box;
display: inline-block;
@@ -9572,7 +9073,6 @@ a.text-dark:hover, a.text-dark:focus {
position: relative;
vertical-align: middle;
}
-
.select2-container .select2-selection--single {
box-sizing: border-box;
cursor: pointer;
@@ -9581,7 +9081,6 @@ a.text-dark:hover, a.text-dark:focus {
user-select: none;
-webkit-user-select: none;
}
-
.select2-container .select2-selection--single .select2-selection__rendered {
display: block;
padding-left: 8px;
@@ -9590,16 +9089,13 @@ a.text-dark:hover, a.text-dark:focus {
text-overflow: ellipsis;
white-space: nowrap;
}
-
.select2-container .select2-selection--single .select2-selection__clear {
position: relative;
}
-
-.select2-container[dir="rtl"] .select2-selection--single .select2-selection__rendered {
+.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered {
padding-right: 8px;
padding-left: 20px;
}
-
.select2-container .select2-selection--multiple {
box-sizing: border-box;
cursor: pointer;
@@ -9608,7 +9104,6 @@ a.text-dark:hover, a.text-dark:focus {
user-select: none;
-webkit-user-select: none;
}
-
.select2-container .select2-selection--multiple .select2-selection__rendered {
display: inline-block;
overflow: hidden;
@@ -9616,11 +9111,9 @@ a.text-dark:hover, a.text-dark:focus {
text-overflow: ellipsis;
white-space: nowrap;
}
-
.select2-container .select2-search--inline {
float: left;
}
-
.select2-container .select2-search--inline .select2-search__field {
box-sizing: border-box;
border: none;
@@ -9628,7 +9121,6 @@ a.text-dark:hover, a.text-dark:focus {
margin-top: 5px;
padding: 0;
}
-
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
-webkit-appearance: none;
}
@@ -9660,7 +9152,6 @@ a.text-dark:hover, a.text-dark:focus {
user-select: none;
-webkit-user-select: none;
}
-
.select2-results__option[aria-selected] {
cursor: pointer;
}
@@ -9685,17 +9176,14 @@ a.text-dark:hover, a.text-dark:focus {
display: block;
padding: 4px;
}
-
.select2-search--dropdown .select2-search__field {
padding: 4px;
width: 100%;
box-sizing: border-box;
}
-
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
-webkit-appearance: none;
}
-
.select2-search--dropdown.select2-search--hide {
display: none;
}
@@ -9736,22 +9224,18 @@ a.text-dark:hover, a.text-dark:focus {
border: 1px solid #aaa;
border-radius: 4px;
}
-
.select2-container--default .select2-selection--single .select2-selection__rendered {
color: #444;
line-height: 28px;
}
-
.select2-container--default .select2-selection--single .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold;
}
-
.select2-container--default .select2-selection--single .select2-selection__placeholder {
color: #999;
}
-
.select2-container--default .select2-selection--single .select2-selection__arrow {
height: 26px;
position: absolute;
@@ -9759,7 +9243,6 @@ a.text-dark:hover, a.text-dark:focus {
right: 1px;
width: 20px;
}
-
.select2-container--default .select2-selection--single .select2-selection__arrow b {
border-color: #888 transparent transparent transparent;
border-style: solid;
@@ -9772,37 +9255,30 @@ a.text-dark:hover, a.text-dark:focus {
top: 50%;
width: 0;
}
-
-.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__clear {
+.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {
float: left;
}
-
-.select2-container--default[dir="rtl"] .select2-selection--single .select2-selection__arrow {
+.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {
left: 1px;
right: auto;
}
-
.select2-container--default.select2-container--disabled .select2-selection--single {
background-color: #eee;
cursor: default;
}
-
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
display: none;
}
-
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #888 transparent;
border-width: 0 4px 5px 4px;
}
-
.select2-container--default .select2-selection--multiple {
background-color: white;
border: 1px solid #aaa;
border-radius: 4px;
cursor: text;
}
-
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
box-sizing: border-box;
list-style: none;
@@ -9810,11 +9286,9 @@ a.text-dark:hover, a.text-dark:focus {
padding: 0 5px;
width: 100%;
}
-
.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
list-style: none;
}
-
.select2-container--default .select2-selection--multiple .select2-selection__clear {
cursor: pointer;
float: right;
@@ -9823,7 +9297,6 @@ a.text-dark:hover, a.text-dark:focus {
margin-right: 10px;
padding: 1px;
}
-
.select2-container--default .select2-selection--multiple .select2-selection__choice {
background-color: #e4e4e4;
border: 1px solid #aaa;
@@ -9834,7 +9307,6 @@ a.text-dark:hover, a.text-dark:focus {
margin-top: 5px;
padding: 0 5px;
}
-
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
color: #999;
cursor: pointer;
@@ -9842,53 +9314,42 @@ a.text-dark:hover, a.text-dark:focus {
font-weight: bold;
margin-right: 2px;
}
-
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
color: #333;
}
-
-.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir="rtl"] .select2-selection--multiple .select2-search--inline {
+.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir=rtl] .select2-selection--multiple .select2-search--inline {
float: right;
}
-
-.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
+.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice {
margin-left: 5px;
margin-right: auto;
}
-
-.select2-container--default[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
+.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
margin-left: 2px;
margin-right: auto;
}
-
.select2-container--default.select2-container--focus .select2-selection--multiple {
border: solid black 1px;
outline: 0;
}
-
.select2-container--default.select2-container--disabled .select2-selection--multiple {
background-color: #eee;
cursor: default;
}
-
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
display: none;
}
-
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
border-top-left-radius: 0;
border-top-right-radius: 0;
}
-
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
-
.select2-container--default .select2-search--dropdown .select2-search__field {
border: 1px solid #aaa;
}
-
.select2-container--default .select2-search--inline .select2-search__field {
background: transparent;
border: none;
@@ -9896,62 +9357,49 @@ a.text-dark:hover, a.text-dark:focus {
box-shadow: none;
-webkit-appearance: textfield;
}
-
.select2-container--default .select2-results > .select2-results__options {
max-height: 200px;
overflow-y: auto;
}
-
.select2-container--default .select2-results__option[role=group] {
padding: 0;
}
-
.select2-container--default .select2-results__option[aria-disabled=true] {
color: #999;
}
-
.select2-container--default .select2-results__option[aria-selected=true] {
background-color: #ddd;
}
-
.select2-container--default .select2-results__option .select2-results__option {
padding-left: 1em;
}
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
padding-left: 0;
}
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
margin-left: -1em;
padding-left: 2em;
}
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -2em;
padding-left: 3em;
}
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -3em;
padding-left: 4em;
}
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -4em;
padding-left: 5em;
}
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -5em;
padding-left: 6em;
}
-
.select2-container--default .select2-results__option--highlighted[aria-selected] {
background-color: #5897fb;
color: white;
}
-
.select2-container--default .select2-results__group {
cursor: default;
display: block;
@@ -9967,29 +9415,24 @@ a.text-dark:hover, a.text-dark:focus {
background-image: -o-linear-gradient(top, white 50%, #eeeeee 100%);
background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}
-
.select2-container--classic .select2-selection--single:focus {
border: 1px solid #5897fb;
}
-
.select2-container--classic .select2-selection--single .select2-selection__rendered {
color: #444;
line-height: 28px;
}
-
.select2-container--classic .select2-selection--single .select2-selection__clear {
cursor: pointer;
float: right;
font-weight: bold;
margin-right: 10px;
}
-
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
color: #999;
}
-
.select2-container--classic .select2-selection--single .select2-selection__arrow {
background-color: #ddd;
border: none;
@@ -10005,9 +9448,8 @@ a.text-dark:hover, a.text-dark:focus {
background-image: -o-linear-gradient(top, #eeeeee 50%, #cccccc 100%);
background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFCCCCCC', GradientType=0);
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFCCCCCC", GradientType=0);
}
-
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
border-color: #888 transparent transparent transparent;
border-style: solid;
@@ -10020,12 +9462,10 @@ a.text-dark:hover, a.text-dark:focus {
top: 50%;
width: 0;
}
-
-.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__clear {
+.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear {
float: left;
}
-
-.select2-container--classic[dir="rtl"] .select2-selection--single .select2-selection__arrow {
+.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow {
border: none;
border-right: 1px solid #e3e3e3;
border-radius: 0;
@@ -10034,21 +9474,17 @@ a.text-dark:hover, a.text-dark:focus {
left: 1px;
right: auto;
}
-
.select2-container--classic.select2-container--open .select2-selection--single {
border: 1px solid #5897fb;
}
-
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
background: transparent;
border: none;
}
-
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #888 transparent;
border-width: 0 4px 5px 4px;
}
-
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
border-top: none;
border-top-left-radius: 0;
@@ -10057,9 +9493,8 @@ a.text-dark:hover, a.text-dark:focus {
background-image: -o-linear-gradient(top, white 0%, #eeeeee 50%);
background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFEEEEEE', GradientType=0);
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}
-
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
border-bottom: none;
border-bottom-left-radius: 0;
@@ -10068,9 +9503,8 @@ a.text-dark:hover, a.text-dark:focus {
background-image: -o-linear-gradient(top, #eeeeee 50%, white 100%);
background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
background-repeat: repeat-x;
- filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEEEEEE', endColorstr='#FFFFFFFF', GradientType=0);
+ filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFFFFFFF", GradientType=0);
}
-
.select2-container--classic .select2-selection--multiple {
background-color: white;
border: 1px solid #e3e3e3;
@@ -10078,21 +9512,17 @@ a.text-dark:hover, a.text-dark:focus {
cursor: text;
outline: 0;
}
-
.select2-container--classic .select2-selection--multiple:focus {
border: 1px solid #5897fb;
}
-
.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
list-style: none;
margin: 0;
padding: 0 5px;
}
-
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
display: none;
}
-
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
background-color: #e4e4e4;
border: 1px solid #e3e3e3;
@@ -10103,7 +9533,6 @@ a.text-dark:hover, a.text-dark:focus {
margin-top: 5px;
padding: 0 5px;
}
-
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
color: #888;
cursor: pointer;
@@ -10111,85 +9540,68 @@ a.text-dark:hover, a.text-dark:focus {
font-weight: bold;
margin-right: 2px;
}
-
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
color: #555;
}
-
-.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
+.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
float: right;
margin-left: 5px;
margin-right: auto;
}
-
-.select2-container--classic[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
+.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
margin-left: 2px;
margin-right: auto;
}
-
.select2-container--classic.select2-container--open .select2-selection--multiple {
border: 1px solid #5897fb;
}
-
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
border-top: none;
border-top-left-radius: 0;
border-top-right-radius: 0;
}
-
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
border-bottom: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
-
.select2-container--classic .select2-search--dropdown .select2-search__field {
border: 1px solid #e3e3e3;
outline: 0;
}
-
.select2-container--classic .select2-search--inline .select2-search__field {
outline: 0;
box-shadow: none;
}
-
.select2-container--classic .select2-dropdown {
background-color: white;
border: 1px solid transparent;
}
-
.select2-container--classic .select2-dropdown--above {
border-bottom: none;
}
-
.select2-container--classic .select2-dropdown--below {
border-top: none;
}
-
.select2-container--classic .select2-results > .select2-results__options {
max-height: 200px;
overflow-y: auto;
}
-
.select2-container--classic .select2-results__option[role=group] {
padding: 0;
}
-
.select2-container--classic .select2-results__option[aria-disabled=true] {
color: grey;
}
-
.select2-container--classic .select2-results__option--highlighted[aria-selected] {
background-color: #3875d7;
color: white;
}
-
.select2-container--classic .select2-results__group {
cursor: default;
display: block;
padding: 6px;
}
-
.select2-container--classic.select2-container--open .select2-dropdown {
border-color: #5897fb;
}
@@ -10252,7 +9664,6 @@ a.text-dark:hover, a.text-dark:focus {
#RTL SUPPORT
\*------------------------------------*/
}
-
.select2-container--bootstrap .select2-selection {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
@@ -10262,13 +9673,11 @@ a.text-dark:hover, a.text-dark:focus {
font-size: 1rem;
outline: 0;
}
-
@media (prefers-reduced-motion: reduce) {
.select2-container--bootstrap .select2-selection {
transition: none;
}
}
-
.select2-container--bootstrap .select2-search--dropdown .select2-search__field {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
@@ -10277,107 +9686,88 @@ a.text-dark:hover, a.text-dark:focus {
color: #495057;
font-size: 1rem;
}
-
@media (prefers-reduced-motion: reduce) {
.select2-container--bootstrap .select2-search--dropdown .select2-search__field {
transition: none;
}
}
-
.select2-container--bootstrap .select2-search__field {
outline: 0;
/* Firefox 18- */
/**
- * Firefox 19+
- *
- * @see http://stackoverflow.com/questions/24236240/color-for-styled-placeholder-text-is-muted-in-firefox
- */
+ * Firefox 19+
+ *
+ * @see http://stackoverflow.com/questions/24236240/color-for-styled-placeholder-text-is-muted-in-firefox
+ */
}
-
.select2-container--bootstrap .select2-search__field::-webkit-input-placeholder {
color: #6c757d;
}
-
.select2-container--bootstrap .select2-search__field:-moz-placeholder {
color: #6c757d;
}
-
.select2-container--bootstrap .select2-search__field::-moz-placeholder {
color: #6c757d;
opacity: 1;
}
-
.select2-container--bootstrap .select2-search__field:-ms-input-placeholder {
color: #6c757d;
}
-
.select2-container--bootstrap .select2-results__option {
padding: 0.375rem 0.75rem;
/**
- * Disabled results.
- *
- * @see https://select2.github.io/examples.html#disabled-results
- */
+ * Disabled results.
+ *
+ * @see https://select2.github.io/examples.html#disabled-results
+ */
/**
- * Hover state.
- */
+ * Hover state.
+ */
/**
- * Selected state.
- */
+ * Selected state.
+ */
}
-
.select2-container--bootstrap .select2-results__option[role=group] {
padding: 0;
}
-
.select2-container--bootstrap .select2-results__option[aria-disabled=true] {
color: #adb5bd;
cursor: not-allowed;
}
-
.select2-container--bootstrap .select2-results__option[aria-selected=true] {
background-color: #e9ecef;
color: #16181b;
}
-
.select2-container--bootstrap .select2-results__option--highlighted[aria-selected] {
background-color: #083358;
color: #fff;
}
-
.select2-container--bootstrap .select2-results__option .select2-results__option {
padding: 0.375rem 0.75rem;
}
-
.select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__group {
padding-left: 0;
}
-
.select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option {
margin-left: -0.75rem;
padding-left: 1.5rem;
}
-
.select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -1.5rem;
padding-left: 2.25rem;
}
-
.select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -2.25rem;
padding-left: 3rem;
}
-
.select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -3rem;
padding-left: 3.75rem;
}
-
.select2-container--bootstrap .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
margin-left: -3.75rem;
padding-left: 4.5rem;
}
-
.select2-container--bootstrap .select2-results__group {
color: #6c757d;
display: block;
@@ -10386,36 +9776,30 @@ a.text-dark:hover, a.text-dark:focus {
line-height: 1.5;
white-space: nowrap;
}
-
.select2-container--bootstrap.select2-container--focus .select2-selection, .select2-container--bootstrap.select2-container--open .select2-selection {
border-color: #1377cd;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 0 0.2rem rgba(8, 51, 88, 0.25);
}
-
.select2-container--bootstrap.select2-container--open {
/**
- * Make the dropdown arrow point up while the dropdown is visible.
- */
+ * Make the dropdown arrow point up while the dropdown is visible.
+ */
/**
- * Handle border radii of the container when the dropdown is showing.
- */
+ * Handle border radii of the container when the dropdown is showing.
+ */
}
-
.select2-container--bootstrap.select2-container--open .select2-selection .select2-selection__arrow b {
border-color: transparent transparent #6c757d transparent;
border-width: 0 0.25rem 0.25rem 0.25rem;
}
-
.select2-container--bootstrap.select2-container--open.select2-container--below .select2-selection {
border-bottom-color: transparent;
box-shadow: none;
}
-
.select2-container--bootstrap.select2-container--open.select2-container--above .select2-selection {
border-top-color: transparent;
box-shadow: none;
}
-
.select2-container--bootstrap .select2-selection__clear {
color: #6c757d;
cursor: pointer;
@@ -10423,57 +9807,47 @@ a.text-dark:hover, a.text-dark:focus {
font-weight: bold;
margin-right: 10px;
}
-
.select2-container--bootstrap .select2-selection__clear:hover {
color: "#111";
}
-
.select2-container--bootstrap.select2-container--disabled .select2-selection {
border-color: #ced4da;
box-shadow: none;
}
-
.select2-container--bootstrap.select2-container--disabled .select2-selection,
.select2-container--bootstrap.select2-container--disabled .select2-search__field {
cursor: not-allowed;
}
-
.select2-container--bootstrap.select2-container--disabled .select2-selection,
.select2-container--bootstrap.select2-container--disabled .select2-selection--multiple .select2-selection__choice {
background-color: #e9ecef;
}
-
.select2-container--bootstrap.select2-container--disabled .select2-selection__clear,
.select2-container--bootstrap.select2-container--disabled .select2-selection--multiple .select2-selection__choice__remove {
display: none;
}
-
.select2-container--bootstrap .select2-dropdown {
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
border-color: #1377cd;
overflow-x: hidden;
margin-top: -1px;
}
-
.select2-container--bootstrap .select2-dropdown--above {
box-shadow: 0px -6px 12px rgba(0, 0, 0, 0.175);
margin-top: 1px;
}
-
.select2-container--bootstrap .select2-results > .select2-results__options {
max-height: 200px;
overflow-y: auto;
}
-
.select2-container--bootstrap .select2-selection--single {
height: calc(1.5em + 0.75rem + 2px);
line-height: 1.5;
padding: 0.375rem 1.5rem 0.375rem 0.75rem;
/**
- * Adjust the single Select2's dropdown arrow button appearance.
- */
+ * Adjust the single Select2's dropdown arrow button appearance.
+ */
}
-
.select2-container--bootstrap .select2-selection--single .select2-selection__arrow {
position: absolute;
bottom: 0;
@@ -10481,7 +9855,6 @@ a.text-dark:hover, a.text-dark:focus {
top: 0;
width: 0.25rem;
}
-
.select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
border-color: #6c757d transparent transparent transparent;
border-style: solid;
@@ -10494,31 +9867,27 @@ a.text-dark:hover, a.text-dark:focus {
top: 50%;
width: 0;
}
-
.select2-container--bootstrap .select2-selection--single .select2-selection__rendered {
color: #495057;
padding: 0;
}
-
.select2-container--bootstrap .select2-selection--single .select2-selection__placeholder {
color: #6c757d;
}
-
.select2-container--bootstrap .select2-selection--multiple {
min-height: calc(1.5em + 0.75rem + 2px);
padding: 0;
height: auto;
/**
- * Make Multi Select2's choices match Bootstrap 4's default button styles.
- */
+ * Make Multi Select2's choices match Bootstrap 4's default button styles.
+ */
/**
- * Minus 2px borders.
- */
+ * Minus 2px borders.
+ */
/**
- * Clear the selection.
- */
+ * Clear the selection.
+ */
}
-
.select2-container--bootstrap .select2-selection--multiple .select2-selection__rendered {
box-sizing: border-box;
display: block;
@@ -10531,13 +9900,11 @@ a.text-dark:hover, a.text-dark:focus {
text-overflow: ellipsis;
white-space: nowrap;
}
-
.select2-container--bootstrap .select2-selection--multiple .select2-selection__placeholder {
color: #6c757d;
float: left;
margin-top: 5px;
}
-
.select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
color: #495057;
background: #e9ecef;
@@ -10548,7 +9915,6 @@ a.text-dark:hover, a.text-dark:focus {
margin: calc(0.375rem - 1px) 0 0 0.375rem;
padding: 0 0.375rem;
}
-
.select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
background: transparent;
padding: 0 0.75rem;
@@ -10557,7 +9923,6 @@ a.text-dark:hover, a.text-dark:focus {
margin: -1px 0;
min-width: 5em;
}
-
.select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove {
color: #6c757d;
cursor: pointer;
@@ -10565,194 +9930,138 @@ a.text-dark:hover, a.text-dark:focus {
font-weight: bold;
margin-right: 0.1875rem;
}
-
.select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove:hover {
color: "#111";
}
-
.select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
margin-top: 0.375rem;
}
-
-.select2-container--bootstrap .select2-selection--single.form-control-sm,
-.input-group-sm .select2-container--bootstrap .select2-selection--single,
-.form-group-sm .select2-container--bootstrap .select2-selection--single {
+.select2-container--bootstrap .select2-selection--single.form-control-sm, .input-group-sm .select2-container--bootstrap .select2-selection--single, .form-group-sm .select2-container--bootstrap .select2-selection--single {
font-size: 0.875rem;
height: calc(1.5em + 0.5rem + 2px);
line-height: 1.5;
padding: 0.25rem 1.25rem 0.25rem 0.5rem;
/* 2 */
}
-
-.select2-container--bootstrap .select2-selection--single.form-control-sm .select2-selection__arrow b,
-.input-group-sm .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b,
-.form-group-sm .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
+.select2-container--bootstrap .select2-selection--single.form-control-sm .select2-selection__arrow b, .input-group-sm .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b, .form-group-sm .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
margin-left: -0.25rem;
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-sm,
-.input-group-sm .select2-container--bootstrap .select2-selection--multiple,
-.form-group-sm .select2-container--bootstrap .select2-selection--multiple {
+.select2-container--bootstrap .select2-selection--multiple.form-control-sm, .input-group-sm .select2-container--bootstrap .select2-selection--multiple, .form-group-sm .select2-container--bootstrap .select2-selection--multiple {
min-height: calc(1.5em + 0.5rem + 2px);
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-sm .select2-selection__choice,
-.input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice,
-.form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
+.select2-container--bootstrap .select2-selection--multiple.form-control-sm .select2-selection__choice, .input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice, .form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
font-size: 0.875rem;
line-height: 1.5;
margin: calc(0.25rem - 1px) 0 0 0.25rem;
padding: 0 0.25rem;
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-sm .select2-search--inline .select2-search__field,
-.input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field,
-.form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
+.select2-container--bootstrap .select2-selection--multiple.form-control-sm .select2-search--inline .select2-search__field, .input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field, .form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
padding: 0 0.5rem;
font-size: 0.875rem;
height: calc(1.5em + 0.5rem + 2px);
line-height: 1.5;
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-sm .select2-selection__clear,
-.input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear,
-.form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
+.select2-container--bootstrap .select2-selection--multiple.form-control-sm .select2-selection__clear, .input-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear, .form-group-sm .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
margin-top: 0.25rem;
}
-
-.select2-container--bootstrap .select2-selection--single.form-control-lg,
-.input-group-lg .select2-container--bootstrap .select2-selection--single,
-.form-group-lg .select2-container--bootstrap .select2-selection--single {
+.select2-container--bootstrap .select2-selection--single.form-control-lg, .input-group-lg .select2-container--bootstrap .select2-selection--single, .form-group-lg .select2-container--bootstrap .select2-selection--single {
font-size: 1.25rem;
height: calc(1.5em + 1rem + 2px);
line-height: 1.5;
padding: 0.5rem 1.9375rem 0.5rem 1rem;
/* 1 */
}
-
-.select2-container--bootstrap .select2-selection--single.form-control-lg .select2-selection__arrow,
-.input-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow,
-.form-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow {
+.select2-container--bootstrap .select2-selection--single.form-control-lg .select2-selection__arrow, .input-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow, .form-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow {
width: 0.3125rem;
}
-
-.select2-container--bootstrap .select2-selection--single.form-control-lg .select2-selection__arrow b,
-.input-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b,
-.form-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
+.select2-container--bootstrap .select2-selection--single.form-control-lg .select2-selection__arrow b, .input-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b, .form-group-lg .select2-container--bootstrap .select2-selection--single .select2-selection__arrow b {
border-width: 0.3125rem 0.3125rem 0 0.3125rem;
margin-left: -0.3125rem;
margin-left: -0.5rem;
margin-top: -0.15625rem;
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-lg,
-.input-group-lg .select2-container--bootstrap .select2-selection--multiple,
-.form-group-lg .select2-container--bootstrap .select2-selection--multiple {
+.select2-container--bootstrap .select2-selection--multiple.form-control-lg, .input-group-lg .select2-container--bootstrap .select2-selection--multiple, .form-group-lg .select2-container--bootstrap .select2-selection--multiple {
min-height: calc(1.5em + 1rem + 2px);
border-radius: 0.3rem;
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-lg .select2-selection__choice,
-.input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice,
-.form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
+.select2-container--bootstrap .select2-selection--multiple.form-control-lg .select2-selection__choice, .input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice, .form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
font-size: 1.25rem;
line-height: 1.5;
border-radius: 0.25rem;
margin: calc(0.5rem - 1px) 0 0 0.5rem;
padding: 0 0.5rem;
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-lg .select2-search--inline .select2-search__field,
-.input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field,
-.form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
+.select2-container--bootstrap .select2-selection--multiple.form-control-lg .select2-search--inline .select2-search__field, .input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field, .form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-search--inline .select2-search__field {
padding: 0 1rem;
font-size: 1.25rem;
height: calc(1.5em + 1rem + 2px);
line-height: 1.5;
}
-
-.select2-container--bootstrap .select2-selection--multiple.form-control-lg .select2-selection__clear,
-.input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear,
-.form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
+.select2-container--bootstrap .select2-selection--multiple.form-control-lg .select2-selection__clear, .input-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear, .form-group-lg .select2-container--bootstrap .select2-selection--multiple .select2-selection__clear {
margin-top: 0.5rem;
}
-
.select2-container--bootstrap .select2-selection.form-control-lg.select2-container--open .select2-selection--single {
/**
- * Make the dropdown arrow point up while the dropdown is visible.
- */
+ * Make the dropdown arrow point up while the dropdown is visible.
+ */
}
-
.select2-container--bootstrap .select2-selection.form-control-lg.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #6c757d transparent;
border-width: 0 0.3125rem 0.3125rem 0.3125rem;
}
-
.input-group-lg .select2-container--bootstrap .select2-selection.select2-container--open .select2-selection--single {
/**
- * Make the dropdown arrow point up while the dropdown is visible.
- */
+ * Make the dropdown arrow point up while the dropdown is visible.
+ */
}
-
.input-group-lg .select2-container--bootstrap .select2-selection.select2-container--open .select2-selection--single .select2-selection__arrow b {
border-color: transparent transparent #6c757d transparent;
border-width: 0 0.3125rem 0.3125rem 0.3125rem;
}
-
-.select2-container--bootstrap[dir="rtl"] {
+.select2-container--bootstrap[dir=rtl] {
/**
- * Single Select2
- *
- * 1. Makes sure that .select2-selection__placeholder is positioned
- * correctly.
- */
+ * Single Select2
+ *
+ * 1. Makes sure that .select2-selection__placeholder is positioned
+ * correctly.
+ */
/**
- * Multiple Select2
- */
+ * Multiple Select2
+ */
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--single {
+.select2-container--bootstrap[dir=rtl] .select2-selection--single {
padding-left: 1.5rem;
padding-right: 0.75rem;
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__rendered {
+.select2-container--bootstrap[dir=rtl] .select2-selection--single .select2-selection__rendered {
padding-right: 0;
padding-left: 0;
- text-align: right;
- /* 1 */
+ text-align: right; /* 1 */
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__clear {
+.select2-container--bootstrap[dir=rtl] .select2-selection--single .select2-selection__clear {
float: left;
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__arrow {
+.select2-container--bootstrap[dir=rtl] .select2-selection--single .select2-selection__arrow {
left: 0.75rem;
right: auto;
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--single .select2-selection__arrow b {
+.select2-container--bootstrap[dir=rtl] .select2-selection--single .select2-selection__arrow b {
margin-left: 0;
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__choice,
-.select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__placeholder,
-.select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-search--inline {
+.select2-container--bootstrap[dir=rtl] .select2-selection--multiple .select2-selection__choice,
+.select2-container--bootstrap[dir=rtl] .select2-selection--multiple .select2-selection__placeholder,
+.select2-container--bootstrap[dir=rtl] .select2-selection--multiple .select2-search--inline {
float: right;
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__choice {
+.select2-container--bootstrap[dir=rtl] .select2-selection--multiple .select2-selection__choice {
margin-left: 0;
margin-right: 0.375rem;
}
-
-.select2-container--bootstrap[dir="rtl"] .select2-selection--multiple .select2-selection__choice__remove {
+.select2-container--bootstrap[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
margin-left: 2px;
margin-right: auto;
}
-
-.select2-container--bootstrap .select2-dropdown[dir="rtl"] .select2-results__options {
+.select2-container--bootstrap .select2-dropdown[dir=rtl] .select2-results__options {
text-align: right;
}
@@ -10773,22 +10082,18 @@ a.text-dark:hover, a.text-dark:focus {
.is-valid .select2-selection {
border-color: #008a29;
}
-
.is-valid .select2-container--focus .select2-selection,
.is-valid .select2-container--open .select2-selection {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #00f047;
border-color: #00571a;
}
-
.is-valid .select2-container--focus .select2-selection:focus,
.is-valid .select2-container--open .select2-selection:focus {
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.25);
}
-
.is-valid.select2-drop-active {
border-color: #00571a;
}
-
.is-valid.select2-drop-active.select2-drop.select2-drop-above {
border-top-color: #00571a;
}
@@ -10797,22 +10102,18 @@ a.text-dark:hover, a.text-dark:focus {
.is-invalid .select2-selection {
border-color: #e13737;
}
-
.is-invalid .select2-container--focus .select2-selection,
.is-invalid .select2-container--open .select2-selection {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ee9090;
border-color: #c71e1e;
}
-
.is-invalid .select2-container--focus .select2-selection:focus,
.is-invalid .select2-container--open .select2-selection:focus {
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.25);
}
-
.is-invalid.select2-drop-active {
border-color: #c71e1e;
}
-
.is-invalid.select2-drop-active.select2-drop.select2-drop-above {
border-top-color: #c71e1e;
}
@@ -10822,22 +10123,18 @@ a.text-dark:hover, a.text-dark:focus {
.has-warning .select2-selection {
border-color: #e6d200;
}
-
.has-warning .select2-container--focus .select2-selection,
.has-warning .select2-container--open .select2-selection {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #fff04d;
border-color: #b3a300;
}
-
.has-warning .select2-container--focus .select2-selection:focus,
.has-warning .select2-container--open .select2-selection:focus {
box-shadow: 0 0 0 0.2rem rgba(230, 210, 0, 0.25);
}
-
.has-warning.select2-drop-active {
border-color: #b3a300;
}
-
.has-warning.select2-drop-active.select2-drop.select2-drop-above {
border-top-color: #b3a300;
}
@@ -10846,22 +10143,18 @@ a.text-dark:hover, a.text-dark:focus {
.has-error .select2-selection {
border-color: #e13737;
}
-
.has-error .select2-container--focus .select2-selection,
.has-error .select2-container--open .select2-selection {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ee9090;
border-color: #c71e1e;
}
-
.has-error .select2-container--focus .select2-selection:focus,
.has-error .select2-container--open .select2-selection:focus {
box-shadow: 0 0 0 0.2rem rgba(225, 55, 55, 0.25);
}
-
.has-error.select2-drop-active {
border-color: #c71e1e;
}
-
.has-error.select2-drop-active.select2-drop.select2-drop-above {
border-top-color: #c71e1e;
}
@@ -10870,22 +10163,18 @@ a.text-dark:hover, a.text-dark:focus {
.has-success .select2-selection {
border-color: #008a29;
}
-
.has-success .select2-container--focus .select2-selection,
.has-success .select2-container--open .select2-selection {
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #00f047;
border-color: #00571a;
}
-
.has-success .select2-container--focus .select2-selection:focus,
.has-success .select2-container--open .select2-selection:focus {
box-shadow: 0 0 0 0.2rem rgba(0, 138, 41, 0.25);
}
-
.has-success.select2-drop-active {
border-color: #00571a;
}
-
.has-success.select2-drop-active.select2-drop.select2-drop-above {
border-top-color: #00571a;
}
@@ -10917,20 +10206,16 @@ a.text-dark:hover, a.text-dark:focus {
* @see https://github.com/twbs/bootstrap/blob/v4.4.1/scss/_input-group.scss
*/
}
-
.input-group > .select2-container--bootstrap > .selection {
display: flex;
flex: 1 1 auto;
}
-
.input-group > .select2-container--bootstrap > .selection > .select2-selection.form-control {
float: none;
}
-
.input-group > .select2-container--bootstrap.select2-container--open, .input-group > .select2-container--bootstrap.select2-container--focus {
z-index: 3;
}
-
.input-group > .select2-container--bootstrap,
.input-group > .select2-container--bootstrap .input-group-append,
.input-group > .select2-container--bootstrap .input-group-prepend,
@@ -10962,4 +10247,4 @@ a.text-dark:hover, a.text-dark:focus {
}
}
-/*# sourceMappingURL=data:application/json;base64,ewoJInZlcnNpb24iOiAzLAoJImZpbGUiOiAiZGlzdC9zZWVkZG1zLmNzcyIsCgkic291cmNlcyI6IFsKCQkic2Nzcy9zZWVkZG1zLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvYm9vdHN0cmFwLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWl4aW5zLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2RlcHJlY2F0ZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2hvdmVyLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19pbWFnZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFkZ2Uuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2NyZWVuLXJlYWRlci5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fc2l6ZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGV4dC1oaWRlLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL192aXNpYmlsaXR5LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19hbGVydC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnV0dG9ucy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2FyZXQuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZm9ybXMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ib3gtc2hhZG93LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RyYW5zaXRpb24uc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmlkLWZyYW1ld29yay5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZmxvYXQuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdHlwZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY29kZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19mb3Jtcy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2J1dHRvbi1ncm91cC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19pbnB1dC1ncm91cC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdmJhci5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGFnaW5hdGlvbi5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19qdW1ib3Ryb24uc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcHJvZ3Jlc3Muc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbWVkaWEuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b2FzdHMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbW9kYWwuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9vbHRpcC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19wb3BvdmVyLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2Nhcm91c2VsLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3NwaW5uZXJzLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3V0aWxpdGllcy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYWxpZ24uc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JhY2tncm91bmQuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2JvcmRlcnMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2NsZWFyZml4LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19kaXNwbGF5LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19lbWJlZC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxleC5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fZmxvYXQuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX2ludGVyYWN0aW9ucy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fb3ZlcmZsb3cuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3Bvc2l0aW9uLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zY3JlZW5yZWFkZXJzLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaGFkb3dzLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL19zaXppbmcuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3NwYWNpbmcuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy91dGlsaXRpZXMvX3N0cmV0Y2hlZC1saW5rLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL190ZXh0LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdXRpbGl0aWVzL192aXNpYmlsaXR5LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ByaW50LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvc2VsZWN0Mi9zcmMvc2Nzcy9jb3JlLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvc2VsZWN0Mi9zcmMvc2Nzcy9fc2luZ2xlLnNjc3MiLAoJCSJub2RlX21vZHVsZXMvc2VsZWN0Mi9zcmMvc2Nzcy9fbXVsdGlwbGUuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9zZWxlY3QyL3NyYy9zY3NzL19kcm9wZG93bi5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL3NlbGVjdDIvc3JjL3Njc3MvdGhlbWUvZGVmYXVsdC9sYXlvdXQuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9zZWxlY3QyL3NyYy9zY3NzL3RoZW1lL2RlZmF1bHQvX3NpbmdsZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL3NlbGVjdDIvc3JjL3Njc3MvdGhlbWUvZGVmYXVsdC9fbXVsdGlwbGUuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9zZWxlY3QyL3NyYy9zY3NzL3RoZW1lL2NsYXNzaWMvbGF5b3V0LnNjc3MiLAoJCSJub2RlX21vZHVsZXMvc2VsZWN0Mi9zcmMvc2Nzcy90aGVtZS9jbGFzc2ljL19kZWZhdWx0cy5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL3NlbGVjdDIvc3JjL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9zZWxlY3QyL3NyYy9zY3NzL3RoZW1lL2NsYXNzaWMvX3NpbmdsZS5zY3NzIiwKCQkibm9kZV9tb2R1bGVzL3NlbGVjdDIvc3JjL3Njc3MvdGhlbWUvY2xhc3NpYy9fbXVsdGlwbGUuc2NzcyIsCgkJIm5vZGVfbW9kdWxlcy9zZWxlY3QyLXRoZW1lLWJvb3RzdHJhcDQvc3JjL3NlbGVjdDItYm9vdHN0cmFwLnNjc3MiCgldLAoJIm5hbWVzIjogW10sCgkibWFwcGluZ3MiOiAiQUFBQSxrQ0FBa0M7QUFFbEM7Ozs7Ozs7OztFQVNFO0FBaUJGOzs7Ozs7RUFNRTtBQ2xDRjs7Ozs7R0FLRztBb0NMSCxBQUFBLEtBQUssQ0FBQztFQUdGLE1BQVcsQ0FBRSxRQUFDO0VBQWQsUUFBVyxDQUFFLFFBQUM7RUFBZCxRQUFXLENBQUUsUUFBQztFQUFkLE1BQVcsQ0FBRSxRQUFDO0VBQWQsS0FBVyxDQUFFLFFBQUM7RUFBZCxRQUFXLENBQUUsUUFBQztFQUFkLFFBQVcsQ0FBRSxRQUFDO0VBQWQsT0FBVyxDQUFFLFFBQUM7RUFBZCxNQUFXLENBQUUsUUFBQztFQUFkLE1BQVcsQ0FBRSxRQUFDO0VBQWQsT0FBVyxDQUFFLEtBQUM7RUFBZCxNQUFXLENBQUUsUUFBQztFQUFkLFdBQVcsQ0FBRSxRQUFDO0VBSWQsU0FBVyxDQUFFLFFBQUM7RUFBZCxXQUFXLENBQUUsUUFBQztFQUFkLFNBQVcsQ0FBRSxRQUFDO0VBQWQsTUFBVyxDQUFFLFFBQUM7RUFBZCxTQUFXLENBQUUsUUFBQztFQUFkLFFBQVcsQ0FBRSxRQUFDO0VBQWQsT0FBVyxDQUFFLFFBQUM7RUFBZCxNQUFXLENBQUUsUUFBQztFQUlkLGVBQW1CLENBQWEsRUFBQztFQUFqQyxlQUFtQixDQUFhLE1BQUM7RUFBakMsZUFBbUIsQ0FBYSxNQUFDO0VBQWpDLGVBQW1CLENBQWEsTUFBQztFQUFqQyxlQUFtQixDQUFhLE9BQUM7RUFLbkMsd0JBQXdCLENBQUEseU1BQUM7RUFDekIsdUJBQXVCLENBQUEscUZBQUM7Q0FDekI7O0FDQUQsQUFBQSxDQUFDO0FBQ0QsQ0FBQyxBQUFBLFFBQVE7QUFDVCxDQUFDLEFBQUEsT0FBTyxDQUFDO0VBQ1AsVUFBVSxFQUFFLFVBQVU7Q0FDdkI7O0FBRUQsQUFBQSxJQUFJLENBQUM7RUFDSCxXQUFXLEVBQUUsVUFBVTtFQUN2QixXQUFXLEVBQUUsSUFBSTtFQUNqQix3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O0lBQ2QsS0FBSyxFQUFFLElBQUk7SUFDWCxTQUFTLEVBQUUsSUFBSTtHRERWO0VBSUcsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DO0dEV3JDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBbUM7SUFJN0MsU0FBUyxFQUFFLElBQW1DO0dEV3JDO0VBSUwsQUFBQSxlQUFlLENBQU87SUFBRSxLQUFLLEVBQUUsRUFBRTtHQUFJO0VBRXJDLEFBQUEsY0FBYyxDQUFPO0lBQUUsS0FBSyxFL0JtS0osRUFBRTtHK0JuS29CO0VBRzVDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsV0FBVyxDQUFXO0lBQUUsS0FBSyxFQURsQixDQUFDO0dBQ3lCO0VBQXJDLEFBQUEsWUFBWSxDQUFVO0lBQUUsS0FBSyxFQURsQixFQUFDO0dBQ3lCO0VBQXJDLEFBQUEsWUFBWSxDQUFVO0lBQUUsS0FBSyxFQURsQixFQUFDO0dBQ3lCO0VBQXJDLEFBQUEsWUFBWSxDQUFVO0lBQUUsS0FBSyxFQURsQixFQUFDO0dBQ3lCO0VBT2pDLEFBQUEsWUFBWSxDQUFXO0lDaEJqQyxXQUFXLEVBQWdCLENBQUM7R0RrQmpCO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsU0FBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsVUFBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsR0FBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsVUFBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsVUFBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsR0FBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsVUFBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsVUFBZ0I7R0RrQm5DO0VBRkQsQUFBQSxZQUFZLENBQVc7SUNoQmpDLFdBQVcsRUFBbUIsR0FBZ0I7R0RrQm5DO0VBRkQsQUFBQSxhQUFhLENBQVU7SUNoQmpDLFdBQVcsRUFBbUIsVUFBZ0I7R0RrQm5DO0VBRkQsQUFBQSxhQUFhLENBQVU7SUNoQmpDLFdBQVcsRUFBbUIsVUFBZ0I7R0RrQm5DOzs7QTNCYlQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0UyQjNCdEIsQUFBQSxPQUFPLENBQU87SUFDWixVQUFVLEVBQUUsQ0FBQztJQUNiLFNBQVMsRUFBRSxDQUFDO0lBQ1osU0FBUyxFQUFFLElBQUk7R0FDaEI7RUFJRyxBQ3VCUixjRHZCc0IsR0N1QnBCLENBQUMsQ0FBQztJQUNGLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDOUJ1QkEsSUFBNEM7SThCdEJyRCxTQUFTLEU5QnNCQSxJQUE0QztHOEJyQnREO0VEMUJPLEFDdUJSLGNEdkJzQixHQ3VCcEIsQ0FBQyxDQUFDO0lBQ0YsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEM5QnVCQSxHQUE0QztJOEJ0QnJELFNBQVMsRTlCc0JBLEdBQTRDO0c4QnJCdEQ7RUQxQk8sQUN1QlIsY0R2QnNCLEdDdUJwQixDQUFDLENBQUM7SUFDRixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQzlCdUJBLFVBQTRDO0k4QnRCckQsU0FBUyxFOUJzQkEsVUFBNEM7RzhCckJ0RDtFRDFCTyxBQ3VCUixjRHZCc0IsR0N1QnBCLENBQUMsQ0FBQztJQUNGLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDOUJ1QkEsR0FBNEM7SThCdEJyRCxTQUFTLEU5QnNCQSxHQUE0QztHOEJyQnREO0VEMUJPLEFDdUJSLGNEdkJzQixHQ3VCcEIsQ0FBQyxDQUFDO0lBQ0YsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEM5QnVCQSxHQUE0QztJOEJ0QnJELFNBQVMsRTlCc0JBLEdBQTRDO0c4QnJCdEQ7RUQxQk8sQUN1QlIsY0R2QnNCLEdDdUJwQixDQUFDLENBQUM7SUFDRixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQzlCdUJBLFVBQTRDO0k4QnRCckQsU0FBUyxFOUJzQkEsVUFBNEM7RzhCckJ0RDtFRHBCRyxBQUFBLFlBQVksQ0FBTztJQ0N2QixJQUFJLEVBQUUsUUFBUTtJQUNkLEtBQUssRUFBRSxJQUFJO0lBQ1gsU0FBUyxFQUFFLElBQUk7R0REVjtFQUlHLEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQW1DO0lBSTdDLFNBQVMsRUFBRSxTQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQW1DO0lBSTdDLFNBQVMsRUFBRSxVQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQW1DO0lBSTdDLFNBQVMsRUFBRSxHQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQW1DO0lBSTdDLFNBQVMsRUFBRSxVQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQW1DO0lBSTdDLFNBQVMsRUFBRSxVQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQW1DO0lBSTdDLFNBQVMsRUFBRSxHQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQW1DO0lBSTdDLFNBQVMsRUFBRSxVQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQW1DO0lBSTdDLFNBQVMsRUFBRSxVQUFtQztHRFdyQztFQUZELEFBQUEsU0FBUyxDQUFXO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQW1DO0lBSTdDLFNBQVMsRUFBRSxHQUFtQztHRFdyQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQW1DO0lBSTdDLFNBQVMsRUFBRSxVQUFtQztHRFdyQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQW1DO0lBSTdDLFNBQVMsRUFBRSxVQUFtQztHRFdyQztFQUZELEFBQUEsVUFBVSxDQUFVO0lDYjVCLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQW1DO0lBSTdDLFNBQVMsRUFBRSxJQUFtQztHRFdyQztFQUlMLEFBQUEsZUFBZSxDQUFPO0lBQUUsS0FBSyxFQUFFLEVBQUU7R0FBSTtFQUVyQyxBQUFBLGNBQWMsQ0FBTztJQUFFLEtBQUss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S0FBSyxFQUFFLElBQUk7SUFDWCxTQUFTLEVBQUUsSUFBSTtHRERWO0VBSUcsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBbUM7SUFJN0MsU0FBUyxFQUFFLFNBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBbUM7SUFJN0MsU0FBUyxFQUFFLFVBQW1DO0dEV3JDO0VBRkQsQUFBQSxTQUFTLENBQVc7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBbUM7SUFJN0MsU0FBUyxFQUFFLEdBQW1DO0dEV3JDO0VBRkQsQUFBQSxVQUFVLENBQVU7SUNiNUIsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFD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 */
\ No newline at end of file
+/*# sourceMappingURL=seeddms.css.map */
From 7f16340a2645345cb3f29f1cbe15b825a39dc595 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Mon, 22 Apr 2024 17:47:11 +0200
Subject: [PATCH 15/85] fix adding workflow log
---
utils/xmldump.php | 37 +++++++++++++++++++++----------------
1 file changed, 21 insertions(+), 16 deletions(-)
diff --git a/utils/xmldump.php b/utils/xmldump.php
index 5f993d227..ec84a1689 100644
--- a/utils/xmldump.php
+++ b/utils/xmldump.php
@@ -203,7 +203,7 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
if($attributes = $folder->getAttributes()) {
foreach($attributes as $attribute) {
$attrdef = $attribute->getAttributeDefinition();
- echo $indent." getID()."\">".wrapWithCData($attribute->getValue())." \n";
+ echo $indent." getID()."\">".wrapWithCData($attribute->getValueAsString())." \n";
}
}
$notifications = $folder->getNotifyList();
@@ -278,7 +278,7 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
if($attributes = $document->getAttributes()) {
foreach($attributes as $attribute) {
$attrdef = $attribute->getAttributeDefinition();
- echo $indent." getID()."\">".wrapWithCData($attribute->getValue())." \n";
+ echo $indent." getID()."\">".wrapWithCData($attribute->getValueAsString())." \n";
}
}
@@ -335,7 +335,7 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
if($attributes = $version->getAttributes()) {
foreach($attributes as $attribute) {
$attrdef = $attribute->getAttributeDefinition();
- echo $indent." getID()."\">".wrapWithCData($attribute->getValue())." \n";
+ echo $indent." getID()."\">".wrapWithCData($attribute->getValueAsString())." \n";
}
}
if($statuslog = $version->getStatusLog()) {
@@ -371,18 +371,23 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
$workflowstate = $version->getWorkflowState();
echo $indent." getID()."\" state=\"".$workflowstate->getID()."\"> \n";
}
- $wkflogs = $version->getWorkflowLog();
- if($wkflogs) {
+ if($workflow)
+ $wkfalllogs[$workflow->getId()] = $version->getWorkflowLog();
+ else
+ $wkfalllogs = $version->getWorkflowLog();
+ if($wkfalllogs) {
echo $indent." \n";
- foreach($wkflogs as $wklog) {
- echo $indent." \n";
- echo $indent." ".$wklog->getDate()." \n";
- echo $indent." ".$wklog->getWorkflow()->getID()." \n";
- echo $indent." ".$wklog->getTransition()->getID()." \n";
- $loguser = $wklog->getUser();
- echo $indent." ".$loguser->getID()." \n";
- echo $indent." ".wrapWithCData($wklog->getComment())." \n";
- echo $indent." \n";
+ foreach($wkfalllogs as $wkflogs) {
+ foreach($wkflogs as $wklog) {
+ echo $indent." \n";
+ echo $indent." ".$wklog->getDate()." \n";
+ echo $indent." ".$wklog->getWorkflow()->getID()." \n";
+ echo $indent." ".$wklog->getTransition()->getID()." \n";
+ $loguser = $wklog->getUser();
+ echo $indent." ".$loguser->getID()." \n";
+ echo $indent." ".wrapWithCData($wklog->getComment())." \n";
+ echo $indent." \n";
+ }
}
echo $indent." \n";
}
@@ -470,11 +475,11 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
} /* }}} */
include($myincpath."/inc/inc.Settings.php");
+include($myincpath."/inc/inc.Utils.php");
include($myincpath."/inc/inc.Init.php");
include($myincpath."/inc/inc.Extension.php");
include($myincpath."/inc/inc.DBInit.php");
-include($myincpath."/inc/inc.ClassSettings.php");
-include($myincpath."/inc/inc.Acl.php");
+include($myincpath."/inc/inc.ClassAcl.php");
if(!$folderid) {
$folderid = $settings->_rootFolderID;
From 0044cd6a19914c47570c2e9d827b760c0cefd75d Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Mon, 22 Apr 2024 17:47:11 +0200
Subject: [PATCH 16/85] fix adding workflow log
---
utils/xmldump.php | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/utils/xmldump.php b/utils/xmldump.php
index e85ef09fa..6eb1520e3 100644
--- a/utils/xmldump.php
+++ b/utils/xmldump.php
@@ -201,7 +201,7 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
if($attributes = $folder->getAttributes()) {
foreach($attributes as $attribute) {
$attrdef = $attribute->getAttributeDefinition();
- echo $indent." getID()."\">".wrapWithCData($attribute->getValue())." \n";
+ echo $indent." getID()."\">".wrapWithCData($attribute->getValueAsString())." \n";
}
}
$notifications = $folder->getNotifyList();
@@ -276,7 +276,7 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
if($attributes = $document->getAttributes()) {
foreach($attributes as $attribute) {
$attrdef = $attribute->getAttributeDefinition();
- echo $indent." getID()."\">".wrapWithCData($attribute->getValue())." \n";
+ echo $indent." getID()."\">".wrapWithCData($attribute->getValueAsString())." \n";
}
}
@@ -332,7 +332,7 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
if($attributes = $version->getAttributes()) {
foreach($attributes as $attribute) {
$attrdef = $attribute->getAttributeDefinition();
- echo $indent." getID()."\">".wrapWithCData($attribute->getValue())." \n";
+ echo $indent." getID()."\">".wrapWithCData($attribute->getValueAsString())." \n";
}
}
if($statuslog = $version->getStatusLog()) {
@@ -459,9 +459,11 @@ function tree($folder, $parent=null, $indent='', $skipcurrent=false) { /* {{{ */
} /* }}} */
include($myincpath."/inc/inc.Settings.php");
+include($myincpath."/inc/inc.Utils.php");
include($myincpath."/inc/inc.Init.php");
include($myincpath."/inc/inc.Extension.php");
include($myincpath."/inc/inc.DBInit.php");
+include($myincpath."/inc/inc.ClassAcl.php");
if(!$folderid) {
$folderid = $settings->_rootFolderID;
From 55aa6fe170ad34e6271d510e7ed905dd6069020f Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 12:18:34 +0200
Subject: [PATCH 17/85] the checkout info is not related to substituted user
---
views/bootstrap/class.ViewDocument.php | 13 +++----------
1 file changed, 3 insertions(+), 10 deletions(-)
diff --git a/views/bootstrap/class.ViewDocument.php b/views/bootstrap/class.ViewDocument.php
index 121b5910a..ca1aff99a 100644
--- a/views/bootstrap/class.ViewDocument.php
+++ b/views/bootstrap/class.ViewDocument.php
@@ -414,17 +414,10 @@ $(document).ready( function() {
if(is_string($txt)) {
echo $txt;
} elseif($infos = $document->getCheckOutInfo()) {
- $session = $this->params['session'];
- if($session->getSu()) {
- $origuser = $dms->getUser($session->getUser());
- $checkoutpath = sprintf($checkoutdir, preg_replace('/[^A-Za-z0-9_-]/', '', $origuser->getLogin()));
- } else {
- $origuser = $user;
- $checkoutpath = sprintf($checkoutdir, preg_replace('/[^A-Za-z0-9_-]/', '', $user->getLogin()));
- }
- foreach($infos as $info) {
+ foreach($infos as $i=>$info) {
$checkoutuser = $dms->getUser($info['userID']);
- $checkoutstatus = $document->checkOutStatus();
+ $checkoutpath = sprintf($checkoutdir, preg_replace('/[^A-Za-z0-9_-]/', '', $checkoutuser->getLogin()));
+ $checkoutstatus = $document->checkOutStatus($i);
echo "";
From 06f0e1423bf64532807ace65bcc176426b27dd4b Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 12:20:04 +0200
Subject: [PATCH 18/85] add changes for 6.0.27
---
CHANGELOG | 2 ++
1 file changed, 2 insertions(+)
diff --git a/CHANGELOG b/CHANGELOG
index 8cc82898b..78c3ceebe 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -5,6 +5,8 @@
- Document/folder check distinguishes between documents which cannot be
receiped/revised because of access rights or the recipient/revisor being
disabled.
+- fix creating user via rest api
+- checkout info does not depend on whether the logged in user was substituted
--------------------------------------------------------------------------------
Changes in version 6.0.26
From cf786e749afb1c54cae256d81a809e2740050482 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 12:38:03 +0200
Subject: [PATCH 19/85] fix setting role of user when creating a new user
---
restapi/index.php | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/restapi/index.php b/restapi/index.php
index f9971ad41..eb0cdc856 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -2053,10 +2053,10 @@ class RestapiController { /* {{{ */
$language = isset($params['language']) ? $params['language'] : null;;
$theme = isset($params['theme']) ? $params['theme'] : null;
$comment = isset($params['comment']) ? $params['comment'] : null;
- $role = isset($params['role']) ? $params['role'] : null;
- $roleid = $role == 'admin' ? SeedDMS_Core_User::role_admin : ($role == 'guest' ? SeedDMS_Core_User::role_guest : SeedDMS_Core_User::role_user);
+ $role = isset($params['role']) ? $params['role'] : 3;
+ $roleobj = $role == 'admin' ? SeedDMS_Core_Role::getInstance(1, $dms) : ($role == 'guest' ? SeedDMS_Core_Role::getInstance(2, $dms) : SeedDMS_Core_Role::getInstance($role, $dms));
- $newAccount = $dms->addUser($userName, $password, $fullname, $email, $language, $theme, $comment, $roleid);
+ $newAccount = $dms->addUser($userName, $password, $fullname, $email, $language, $theme, $comment, $roleobj);
if ($newAccount === false) {
return $response->withJson(array('success'=>false, 'message'=>'Account could not be created, maybe it already exists', 'data'=>''), 500);
}
From 84443437a2fe1fef181f62008dd0d9efe55e2c53 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 12:38:41 +0200
Subject: [PATCH 20/85] comment must be set to '' because user comment may not
be null
---
restapi/index.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/restapi/index.php b/restapi/index.php
index 2978e6915..cd73530e2 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -2052,7 +2052,7 @@ class RestapiController { /* {{{ */
$email = isset($params['email']) ? $params['email'] : '';
$language = isset($params['language']) ? $params['language'] : null;;
$theme = isset($params['theme']) ? $params['theme'] : null;
- $comment = isset($params['comment']) ? $params['comment'] : null;
+ $comment = isset($params['comment']) ? $params['comment'] : '';
$role = isset($params['role']) ? $params['role'] : null;
$roleid = $role == 'admin' ? SeedDMS_Core_User::role_admin : ($role == 'guest' ? SeedDMS_Core_User::role_guest : SeedDMS_Core_User::role_user);
From 6250a212b39733036959f270c39150e11ad19fb9 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 13:55:55 +0200
Subject: [PATCH 21/85] hash password when creating a new user
---
restapi/index.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/restapi/index.php b/restapi/index.php
index cd73530e2..4aa2c4de7 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -2056,7 +2056,7 @@ class RestapiController { /* {{{ */
$role = isset($params['role']) ? $params['role'] : null;
$roleid = $role == 'admin' ? SeedDMS_Core_User::role_admin : ($role == 'guest' ? SeedDMS_Core_User::role_guest : SeedDMS_Core_User::role_user);
- $newAccount = $dms->addUser($userName, $password, $fullname, $email, $language, $theme, $comment, $roleid);
+ $newAccount = $dms->addUser($userName, seed_pass_hash($password), $fullname, $email, $language, $theme, $comment, $roleid);
if ($newAccount === false) {
return $response->withJson(array('success'=>false, 'message'=>'Account could not be created, maybe it already exists', 'data'=>''), 500);
}
From 0da2308ee390ed2da799975545db04882bf9b03c Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 18:15:14 +0200
Subject: [PATCH 22/85] add new endpoints for managing roles
---
restapi/index.php | 122 ++++++++++++++++++++++++++++++++++++++--------
1 file changed, 101 insertions(+), 21 deletions(-)
diff --git a/restapi/index.php b/restapi/index.php
index 41039b1e5..0095afe61 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -170,7 +170,7 @@ class RestapiController { /* {{{ */
'email'=>$u->getEmail(),
'language' => $u->getLanguage(),
'theme' => $u->getTheme(),
- 'role' => array('id'=>(int)$u->getRole()->getId(), 'name'=>$u->getRole()->getName()),
+ 'role' => $this->__getRoleData($u->getRole()), //array('id'=>(int)$u->getRole()->getId(), 'name'=>$u->getRole()->getName()),
'hidden'=>$u->isHidden() ? true : false,
'disabled'=>$u->isDisabled() ? true : false,
'isguest' => $u->isGuest() ? true : false,
@@ -189,6 +189,16 @@ class RestapiController { /* {{{ */
return $data;
} /* }}} */
+ protected function __getRoleData($r) { /* {{{ */
+ $data = array(
+ 'type'=>'role',
+ 'id'=>(int)$r->getID(),
+ 'name'=>$r->getName(),
+ 'role'=>$r->getRole()
+ );
+ return $data;
+ } /* }}} */
+
protected function __getAttributeDefinitionData($attrdef) { /* {{{ */
$data = [
'id' => (int)$attrdef->getId(),
@@ -1192,7 +1202,7 @@ class RestapiController { /* {{{ */
->withHeader('Content-Description', 'File Transfer')
->withHeader('Content-Transfer-Encoding', 'binary')
->withHeader('Content-Disposition', 'attachment; filename="' . $filename . '"')
- ->withHeader('Content-Length', filesize($dms->contentDir . $lc->getPath()))
+ ->withAddedHeader('Content-Length', filesize($dms->contentDir . $lc->getPath()))
->withHeader('Expires', '0')
->withHeader('Cache-Control', 'must-revalidate, post-check=0, pre-check=0')
->withHeader('Pragma', 'no-cache')
@@ -2054,7 +2064,10 @@ class RestapiController { /* {{{ */
$theme = isset($params['theme']) ? $params['theme'] : null;
$comment = isset($params['comment']) ? $params['comment'] : '';
$role = isset($params['role']) ? $params['role'] : 3;
- $roleobj = $role == 'admin' ? SeedDMS_Core_Role::getInstance(1, $dms) : ($role == 'guest' ? SeedDMS_Core_Role::getInstance(2, $dms) : SeedDMS_Core_Role::getInstance($role, $dms));
+ $roleobj = $role == 'admin' ? SeedDMS_Core_Role::getInstance(1, $dms) : ($role == 'guest' ? SeedDMS_Core_Role::getInstance(2, $dms) : SeedDMS_Core_Role::getInstance($role, $dms));
+ if(!$roleobj) {
+ return $response->withJson(array('success'=>false, 'message'=>'Missing role', 'data'=>''), 400);
+ }
$newAccount = $dms->addUser($userName, seed_pass_hash($password), $fullname, $email, $language, $theme, $comment, $roleobj);
if ($newAccount === false) {
@@ -2085,7 +2098,8 @@ class RestapiController { /* {{{ */
} /* }}} */
/**
- * Updates the password of an existing Account, the password must be PUT as a md5 string
+ * Updates the password of an existing Account, the password
+ * will be hashed by this method
*
* @param $id The user name or numerical identifier
*/
@@ -2118,7 +2132,7 @@ class RestapiController { /* {{{ */
return;
}
- $operation = $account->setPwd($newPassword);
+ $operation = $account->setPwd(seed_pass_hash($newPassword));
if (!$operation){
return $response->withJson(array('success'=>false, 'message'=>'', 'data'=>'Could not change password.'), 404);
@@ -2180,6 +2194,69 @@ class RestapiController { /* {{{ */
}
} /* }}} */
+ function getRoles($request, $response) { /* {{{ */
+ $dms = $this->container->dms;
+ $userobj = $this->container->userobj;
+ $check = $this->checkIfAdmin($request, $response);
+ if($check !== true)
+ return $check;
+
+ $roles = $dms->getAllRoles();
+ $data = [];
+ foreach($roles as $r)
+ $data[] = $this->__getRoleData($r);
+
+ return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$data), 200);
+ } /* }}} */
+
+ function createRole($request, $response) { /* {{{ */
+ $dms = $this->container->dms;
+ $userobj = $this->container->userobj;
+
+ $check = $this->checkIfAdmin($request, $response);
+ if($check !== true)
+ return $check;
+ $params = $request->getParsedBody();
+ if (empty($params['name'])) {
+ return $response->withJson(array('success'=>false, 'message'=>'Need a role name.', 'data'=>''), 400);
+ }
+
+ $roleName = $params['name'];
+ $roleType = $params['role'];
+
+ $newRole = $dms->addRole($roleName, $roleType);
+ if ($newRole === false) {
+ return $response->withJson(array('success'=>false, 'message'=>'Role could not be created, maybe it already exists', 'data'=>''), 500);
+ }
+
+ // $result = array('id'=>(int)$newGroup->getID());
+ return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$this->__getRoleData($newRole)), 201);
+ } /* }}} */
+
+ function getRole($request, $response, $args) { /* {{{ */
+ $dms = $this->container->dms;
+ $userobj = $this->container->userobj;
+
+ $check = $this->checkIfAdmin($request, $response);
+ if($check !== true)
+ return $check;
+ if(ctype_digit($args['id']))
+ $role = $dms->getRole($args['id']);
+ else {
+ $role = $dms->getRoleByName($args['id']);
+ }
+ if($role) {
+ $data = $this->__getRoleData($role);
+ $data['users'] = array();
+ foreach ($role->getUsers() as $user) {
+ $data['users'][] = array('id' => (int)$user->getID(), 'login' => $user->getLogin());
+ }
+ return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$data), 200);
+ } else {
+ return $response->withJson(array('success'=>false, 'message'=>'No such role', 'data'=>''), 404);
+ }
+ } /* }}} */
+
function getGroups($request, $response) { /* {{{ */
$dms = $this->container->dms;
$userobj = $this->container->userobj;
@@ -2768,17 +2845,17 @@ class RestapiAuth { /* {{{ */
$logger->log("Received preflight options request", PEAR_LOG_DEBUG);
} elseif(!in_array($request->getUri()->getPath(), array('login')) && substr($request->getUri()->getPath(), 0, 5) != 'echo/' && $request->getUri()->getPath() != 'version') {
$userobj = null;
- if(!empty($this->container->environment['HTTP_AUTHORIZATION']) && !empty($settings->_apiKey) && !empty($settings->_apiUserId)) {
- $logger->log("Authorization key: ".$this->container->environment['HTTP_AUTHORIZATION'], PEAR_LOG_DEBUG);
- if($settings->_apiKey == $this->container->environment['HTTP_AUTHORIZATION']) {
- if(!($userobj = $dms->getUser($settings->_apiUserId))) {
- return $response->withJson(array('success'=>false, 'message'=>'Invalid user associated with api key', 'data'=>''), 403);
- }
- } else {
- return $response->withJson(array('success'=>false, 'message'=>'Wrong api key', 'data'=>''), 403);
- }
- $logger->log("Login with apikey as '".$userobj->getLogin()."' successful", PEAR_LOG_INFO);
- } else {
+ if(!empty($this->container->environment['HTTP_AUTHORIZATION']) && !empty($settings->_apiKey) && !empty($settings->_apiUserId)) {
+ $logger->log("Authorization key: ".$this->container->environment['HTTP_AUTHORIZATION'], PEAR_LOG_DEBUG);
+ if($settings->_apiKey == $this->container->environment['HTTP_AUTHORIZATION']) {
+ if(!($userobj = $dms->getUser($settings->_apiUserId))) {
+ return $response->withJson(array('success'=>false, 'message'=>'Invalid user associated with api key', 'data'=>''), 403);
+ }
+ } else {
+ return $response->withJson(array('success'=>false, 'message'=>'Wrong api key', 'data'=>''), 403);
+ }
+ $logger->log("Login with apikey as '".$userobj->getLogin()."' successful", PEAR_LOG_INFO);
+ } else {
require_once("../inc/inc.ClassSession.php");
$session = new SeedDMS_Session($dms->getDb());
if (isset($_COOKIE["mydms_session"])) {
@@ -2788,7 +2865,7 @@ class RestapiAuth { /* {{{ */
/* Delete Cookie */
setcookie("mydms_session", $dms_session, time()-3600, $settings->_httpRoot);
$logger->log("Session for id '".$dms_session."' has gone", PEAR_LOG_ERR);
- return $response->withJson(array('success'=>false, 'message'=>'Session has gone', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Session has gone', 'data'=>''), 403);
}
/* Load user data */
@@ -2798,20 +2875,20 @@ class RestapiAuth { /* {{{ */
setcookie("mydms_session", $dms_session, time()-3600, $settings->_httpRoot);
if($settings->_enableGuestLogin) {
if(!($userobj = $dms->getUser($settings->_guestID)))
- return $response->withJson(array('success'=>false, 'message'=>'Could not get guest login', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Could not get guest login', 'data'=>''), 403);
} else
- return $response->withJson(array('success'=>false, 'message'=>'Login as guest disabled', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Login as guest disabled', 'data'=>''), 403);
}
if($userobj->isAdmin()) {
if($resArr["su"]) {
if(!($userobj = $dms->getUser($resArr["su"])))
- return $response->withJson(array('success'=>false, 'message'=>'Cannot substitute user', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Cannot substitute user', 'data'=>''), 403);
}
}
// $logger->log("Login with user name '".$userobj->getLogin()."' successful", PEAR_LOG_INFO);
$dms->setUser($userobj);
} else {
- return $response->withJson(array('success'=>false, 'message'=>'Missing session cookie', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Missing session cookie', 'data'=>''), 403);
}
}
$this->container['userobj'] = $userobj;
@@ -2905,6 +2982,9 @@ $app->post('/users', \RestapiController::class.':createUser');
$app->get('/users/{id}', \RestapiController::class.':getUserById');
$app->put('/users/{id}/disable', \RestapiController::class.':setDisabledUser');
$app->put('/users/{id}/password', \RestapiController::class.':changeUserPassword');
+$app->get('/roles', \RestapiController::class.':getRoles');
+$app->post('/roles', \RestapiController::class.':createRole');
+$app->get('/roles/{id}', \RestapiController::class.':getRole');
$app->post('/groups', \RestapiController::class.':createGroup');
$app->get('/groups', \RestapiController::class.':getGroups');
$app->delete('/groups/{id}', \RestapiController::class.':deleteGroup');
From ce9be505fdbe36ff95731d081991499f6414d6b0 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 18:16:06 +0200
Subject: [PATCH 23/85] hash password when setting new password
---
restapi/index.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/restapi/index.php b/restapi/index.php
index 4aa2c4de7..ea77e532f 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -2118,7 +2118,7 @@ class RestapiController { /* {{{ */
return;
}
- $operation = $account->setPwd($newPassword);
+ $operation = $account->setPwd(seed_pass_hash($newPassword));
if (!$operation){
return $response->withJson(array('success'=>false, 'message'=>'', 'data'=>'Could not change password.'), 404);
From 3a1be1333d49fdbb815f1472940ee3296751b1b6 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 18:19:51 +0200
Subject: [PATCH 24/85] fix line indenting
---
restapi/index.php | 202 +++++++++++++++++++++++-----------------------
1 file changed, 101 insertions(+), 101 deletions(-)
diff --git a/restapi/index.php b/restapi/index.php
index ea77e532f..398d7e70f 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -717,94 +717,94 @@ class RestapiController { /* {{{ */
return $response->withJson(array('success'=>false, 'message'=>getMLText("document_duplicate_name"), 'data'=>''), 409);
}
}
- // Get the list of reviewers and approvers for this document.
- $reviewers = array();
- $approvers = array();
- $reviewers["i"] = array();
- $reviewers["g"] = array();
- $approvers["i"] = array();
- $approvers["g"] = array();
- $workflow = null;
- if($settings->_workflowMode == 'traditional' || $settings->_workflowMode == 'traditional_only_approval') {
- // add mandatory reviewers/approvers
- if($settings->_workflowMode == 'traditional') {
- $mreviewers = getMandatoryReviewers($mfolder, null, $userobj);
- if($mreviewers['i'])
- $reviewers['i'] = array_merge($reviewers['i'], $mreviewers['i']);
- if($mreviewers['g'])
- $reviewers['g'] = array_merge($reviewers['g'], $mreviewers['g']);
- }
- $mapprovers = getMandatoryApprovers($mfolder, null, $userobj);
- if($mapprovers['i'])
- $approvers['i'] = array_merge($approvers['i'], $mapprovers['i']);
- if($mapprovers['g'])
- $approvers['g'] = array_merge($approvers['g'], $mapprovers['g']);
- } elseif($settings->_workflowMode == 'advanced') {
- if($workflows = $userobj->getMandatoryWorkflows()) {
- $workflow = array_shift($workflows);
- }
- }
+ // Get the list of reviewers and approvers for this document.
+ $reviewers = array();
+ $approvers = array();
+ $reviewers["i"] = array();
+ $reviewers["g"] = array();
+ $approvers["i"] = array();
+ $approvers["g"] = array();
+ $workflow = null;
+ if($settings->_workflowMode == 'traditional' || $settings->_workflowMode == 'traditional_only_approval') {
+ // add mandatory reviewers/approvers
+ if($settings->_workflowMode == 'traditional') {
+ $mreviewers = getMandatoryReviewers($mfolder, null, $userobj);
+ if($mreviewers['i'])
+ $reviewers['i'] = array_merge($reviewers['i'], $mreviewers['i']);
+ if($mreviewers['g'])
+ $reviewers['g'] = array_merge($reviewers['g'], $mreviewers['g']);
+ }
+ $mapprovers = getMandatoryApprovers($mfolder, null, $userobj);
+ if($mapprovers['i'])
+ $approvers['i'] = array_merge($approvers['i'], $mapprovers['i']);
+ if($mapprovers['g'])
+ $approvers['g'] = array_merge($approvers['g'], $mapprovers['g']);
+ } elseif($settings->_workflowMode == 'advanced') {
+ if($workflows = $userobj->getMandatoryWorkflows()) {
+ $workflow = array_shift($workflows);
+ }
+ }
$temp = $file_info->file;
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$userfiletype = finfo_file($finfo, $temp);
$fileType = ".".pathinfo($origfilename, PATHINFO_EXTENSION);
- finfo_close($finfo);
- $attributes_version = [];
- $notusers = [];
- $notgroups = [];
- $controller = Controller::factory('AddDocument');
- $controller->setParam('documentsource', 'restapi');
- $controller->setParam('documentsourcedetails', null);
- $controller->setParam('dms', $dms);
- $controller->setParam('user', $userobj);
- $controller->setParam('folder', $mfolder);
- $controller->setParam('fulltextservice', $fulltextservice);
- $controller->setParam('name', $docname);
- $controller->setParam('comment', $comment);
- $controller->setParam('expires', $expires);
- $controller->setParam('keywords', $keywords);
- $controller->setParam('categories', $cats);
- $controller->setParam('owner', $owner ? $owner : $userobj);
- $controller->setParam('userfiletmp', $temp);
- $controller->setParam('userfilename', $origfilename ? $origfilename : basename($temp));
- $controller->setParam('filetype', $fileType);
- $controller->setParam('userfiletype', $userfiletype);
- $controller->setParam('sequence', $sequence);
- $controller->setParam('reviewers', $reviewers);
- $controller->setParam('approvers', $approvers);
- $controller->setParam('reqversion', $reqversion);
- $controller->setParam('versioncomment', $version_comment);
- $controller->setParam('attributes', $attributes);
- $controller->setParam('attributesversion', $attributes_version);
- $controller->setParam('workflow', $workflow);
- $controller->setParam('notificationgroups', $notgroups);
- $controller->setParam('notificationusers', $notusers);
- $controller->setParam('maxsizeforfulltext', $settings->_maxSizeForFullText);
- $controller->setParam('defaultaccessdocs', $settings->_defaultAccessDocs);
+ finfo_close($finfo);
+ $attributes_version = [];
+ $notusers = [];
+ $notgroups = [];
+ $controller = Controller::factory('AddDocument');
+ $controller->setParam('documentsource', 'restapi');
+ $controller->setParam('documentsourcedetails', null);
+ $controller->setParam('dms', $dms);
+ $controller->setParam('user', $userobj);
+ $controller->setParam('folder', $mfolder);
+ $controller->setParam('fulltextservice', $fulltextservice);
+ $controller->setParam('name', $docname);
+ $controller->setParam('comment', $comment);
+ $controller->setParam('expires', $expires);
+ $controller->setParam('keywords', $keywords);
+ $controller->setParam('categories', $cats);
+ $controller->setParam('owner', $owner ? $owner : $userobj);
+ $controller->setParam('userfiletmp', $temp);
+ $controller->setParam('userfilename', $origfilename ? $origfilename : basename($temp));
+ $controller->setParam('filetype', $fileType);
+ $controller->setParam('userfiletype', $userfiletype);
+ $controller->setParam('sequence', $sequence);
+ $controller->setParam('reviewers', $reviewers);
+ $controller->setParam('approvers', $approvers);
+ $controller->setParam('reqversion', $reqversion);
+ $controller->setParam('versioncomment', $version_comment);
+ $controller->setParam('attributes', $attributes);
+ $controller->setParam('attributesversion', $attributes_version);
+ $controller->setParam('workflow', $workflow);
+ $controller->setParam('notificationgroups', $notgroups);
+ $controller->setParam('notificationusers', $notusers);
+ $controller->setParam('maxsizeforfulltext', $settings->_maxSizeForFullText);
+ $controller->setParam('defaultaccessdocs', $settings->_defaultAccessDocs);
- if(!($document = $controller())) {
- $err = $controller->getErrorMsg();
- if(is_string($err))
- $errmsg = getMLText($err);
- elseif(is_array($err)) {
- $errmsg = getMLText($err[0], $err[1]);
- } else {
- $errmsg = $err;
- }
- unlink($temp);
- return $response->withJson(array('success'=>false, 'message'=>'Upload failed', 'data'=>''), 500);
- } else {
- if($controller->hasHook('cleanUpDocument')) {
- $controller->callHook('cleanUpDocument', $document, $file);
- }
- // Send notification to subscribers of folder.
- if($notifier) {
- $notifier->sendNewDocumentMail($document, $userobj);
- }
- unlink($temp);
- return $response->withJson(array('success'=>true, 'message'=>'Upload succeded', 'data'=>$this->__getLatestVersionData($document->getLatestContent())), 201);
- }
- /*
+ if(!($document = $controller())) {
+ $err = $controller->getErrorMsg();
+ if(is_string($err))
+ $errmsg = getMLText($err);
+ elseif(is_array($err)) {
+ $errmsg = getMLText($err[0], $err[1]);
+ } else {
+ $errmsg = $err;
+ }
+ unlink($temp);
+ return $response->withJson(array('success'=>false, 'message'=>'Upload failed', 'data'=>''), 500);
+ } else {
+ if($controller->hasHook('cleanUpDocument')) {
+ $controller->callHook('cleanUpDocument', $document, $file);
+ }
+ // Send notification to subscribers of folder.
+ if($notifier) {
+ $notifier->sendNewDocumentMail($document, $userobj);
+ }
+ unlink($temp);
+ return $response->withJson(array('success'=>true, 'message'=>'Upload succeded', 'data'=>$this->__getLatestVersionData($document->getLatestContent())), 201);
+ }
+ /*
$res = $mfolder->addDocument($docname, $comment, $expires, $owner ? $owner : $userobj, $keywords, $cats, $temp, $origfilename ? $origfilename : basename($temp), $fileType, $userfiletype, $sequence, array(), array(), $reqversion, $version_comment, $attributes);
unlink($temp);
if($res) {
@@ -815,8 +815,8 @@ class RestapiController { /* {{{ */
return $response->withJson(array('success'=>true, 'message'=>'Upload succeded', 'data'=>$this->__getLatestVersionData($doc->getLatestContent())), 201);
} else {
return $response->withJson(array('success'=>false, 'message'=>'Upload failed', 'data'=>''), 500);
- }
- */
+ }
+ */
} else {
return $response->withJson(array('success'=>false, 'message'=>'No access', 'data'=>''), 403);
}
@@ -2768,17 +2768,17 @@ class RestapiAuth { /* {{{ */
$logger->log("Received preflight options request", PEAR_LOG_DEBUG);
} elseif(!in_array($request->getUri()->getPath(), array('login')) && substr($request->getUri()->getPath(), 0, 5) != 'echo/' && $request->getUri()->getPath() != 'version') {
$userobj = null;
- if(!empty($this->container->environment['HTTP_AUTHORIZATION']) && !empty($settings->_apiKey) && !empty($settings->_apiUserId)) {
- $logger->log("Authorization key: ".$this->container->environment['HTTP_AUTHORIZATION'], PEAR_LOG_DEBUG);
- if($settings->_apiKey == $this->container->environment['HTTP_AUTHORIZATION']) {
- if(!($userobj = $dms->getUser($settings->_apiUserId))) {
- return $response->withJson(array('success'=>false, 'message'=>'Invalid user associated with api key', 'data'=>''), 403);
- }
- } else {
- return $response->withJson(array('success'=>false, 'message'=>'Wrong api key', 'data'=>''), 403);
- }
- $logger->log("Login with apikey as '".$userobj->getLogin()."' successful", PEAR_LOG_INFO);
- } else {
+ if(!empty($this->container->environment['HTTP_AUTHORIZATION']) && !empty($settings->_apiKey) && !empty($settings->_apiUserId)) {
+ $logger->log("Authorization key: ".$this->container->environment['HTTP_AUTHORIZATION'], PEAR_LOG_DEBUG);
+ if($settings->_apiKey == $this->container->environment['HTTP_AUTHORIZATION']) {
+ if(!($userobj = $dms->getUser($settings->_apiUserId))) {
+ return $response->withJson(array('success'=>false, 'message'=>'Invalid user associated with api key', 'data'=>''), 403);
+ }
+ } else {
+ return $response->withJson(array('success'=>false, 'message'=>'Wrong api key', 'data'=>''), 403);
+ }
+ $logger->log("Login with apikey as '".$userobj->getLogin()."' successful", PEAR_LOG_INFO);
+ } else {
require_once("../inc/inc.ClassSession.php");
$session = new SeedDMS_Session($dms->getDb());
if (isset($_COOKIE["mydms_session"])) {
@@ -2788,7 +2788,7 @@ class RestapiAuth { /* {{{ */
/* Delete Cookie */
setcookie("mydms_session", $dms_session, time()-3600, $settings->_httpRoot);
$logger->log("Session for id '".$dms_session."' has gone", PEAR_LOG_ERR);
- return $response->withJson(array('success'=>false, 'message'=>'Session has gone', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Session has gone', 'data'=>''), 403);
}
/* Load user data */
@@ -2798,20 +2798,20 @@ class RestapiAuth { /* {{{ */
setcookie("mydms_session", $dms_session, time()-3600, $settings->_httpRoot);
if($settings->_enableGuestLogin) {
if(!($userobj = $dms->getUser($settings->_guestID)))
- return $response->withJson(array('success'=>false, 'message'=>'Could not get guest login', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Could not get guest login', 'data'=>''), 403);
} else
- return $response->withJson(array('success'=>false, 'message'=>'Login as guest disabled', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Login as guest disabled', 'data'=>''), 403);
}
if($userobj->isAdmin()) {
if($resArr["su"]) {
if(!($userobj = $dms->getUser($resArr["su"])))
- return $response->withJson(array('success'=>false, 'message'=>'Cannot substitute user', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Cannot substitute user', 'data'=>''), 403);
}
}
// $logger->log("Login with user name '".$userobj->getLogin()."' successful", PEAR_LOG_INFO);
$dms->setUser($userobj);
} else {
- return $response->withJson(array('success'=>false, 'message'=>'Missing session cookie', 'data'=>''), 403);
+ return $response->withJson(array('success'=>false, 'message'=>'Missing session cookie', 'data'=>''), 403);
}
}
$this->container['userobj'] = $userobj;
From b81252e082cde1f64f9a1abdf0dcf930bb9a80f6 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 18:22:14 +0200
Subject: [PATCH 25/85] set vim commands
---
restapi/index.php | 1 +
1 file changed, 1 insertion(+)
diff --git a/restapi/index.php b/restapi/index.php
index 398d7e70f..9efa113c7 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -2938,3 +2938,4 @@ if(isset($GLOBALS['SEEDDMS_HOOKS']['initRestAPI'])) {
$app->run();
+// vim: ts=4 sw=4 expandtab
From 4ed40bff78b09833944821f8cf5ed1616ea3a5c7 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Tue, 23 Apr 2024 18:26:56 +0200
Subject: [PATCH 26/85] fix appearance of delete button
---
views/bootstrap/class.RoleMgr.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/views/bootstrap/class.RoleMgr.php b/views/bootstrap/class.RoleMgr.php
index 1cecc7f17..f5e8bcb51 100644
--- a/views/bootstrap/class.RoleMgr.php
+++ b/views/bootstrap/class.RoleMgr.php
@@ -117,7 +117,7 @@ $(document).ready( function() {
- formSubmit(' '.getMLText('rm_role'),'','','neutral');?>
+ formSubmit(' '.getMLText('rm_role'),'','','secondary');?>
Date: Tue, 23 Apr 2024 18:27:51 +0200
Subject: [PATCH 27/85] add changes for 6.0.27
---
CHANGELOG | 1 +
1 file changed, 1 insertion(+)
diff --git a/CHANGELOG b/CHANGELOG
index 78c3ceebe..7e85a6194 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -7,6 +7,7 @@
disabled.
- fix creating user via rest api
- checkout info does not depend on whether the logged in user was substituted
+- add new endpoints for managing roles by rest api
--------------------------------------------------------------------------------
Changes in version 6.0.26
From 0d2cc403dafe713b1eec4802e977eabf4d4e3936 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Thu, 25 Apr 2024 15:13:17 +0200
Subject: [PATCH 28/85] add endpoint delete '/roles/{id}'
---
restapi/index.php | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/restapi/index.php b/restapi/index.php
index af965e498..5effb5f30 100644
--- a/restapi/index.php
+++ b/restapi/index.php
@@ -2233,6 +2233,25 @@ class RestapiController { /* {{{ */
return $response->withJson(array('success'=>true, 'message'=>'', 'data'=>$this->__getRoleData($newRole)), 201);
} /* }}} */
+ function deleteRole($request, $response, $args) { /* {{{ */
+ $dms = $this->container->dms;
+ $userobj = $this->container->userobj;
+
+ $check = $this->checkIfAdmin($request, $response);
+ if($check !== true)
+ return $check;
+
+ if($role = $dms->getRole($args['id'])) {
+ if($result = $role->remove($userobj)) {
+ return $response->withJson(array('success'=>$result, 'message'=>'', 'data'=>''), 200);
+ } else {
+ return $response->withJson(array('success'=>$result, 'message'=>'Could not delete role', 'data'=>''), 500);
+ }
+ } else {
+ return $response->withJson(array('success'=>false, 'message'=>'No such role', 'data'=>''), 404);
+ }
+ } /* }}} */
+
function getRole($request, $response, $args) { /* {{{ */
$dms = $this->container->dms;
$userobj = $this->container->userobj;
@@ -2985,6 +3004,7 @@ $app->put('/users/{id}/password', \RestapiController::class.':changeUserPassword
$app->get('/roles', \RestapiController::class.':getRoles');
$app->post('/roles', \RestapiController::class.':createRole');
$app->get('/roles/{id}', \RestapiController::class.':getRole');
+$app->delete('/roles/{id}', \RestapiController::class.':deleteRole');
$app->post('/groups', \RestapiController::class.':createGroup');
$app->get('/groups', \RestapiController::class.':getGroups');
$app->delete('/groups/{id}', \RestapiController::class.':deleteGroup');
From 409b86461b64a543f88b265554c0827bb1a00d12 Mon Sep 17 00:00:00 2001
From: Uwe Steinmann
Date: Thu, 25 Apr 2024 18:33:05 +0200
Subject: [PATCH 29/85] add transmittals in menu
---
CHANGELOG | 1 +
inc/inc.ClassSettings.php | 4 ++
inc/inc.ClassUI.php | 1 +
op/op.Settings.php | 1 +
views/bootstrap/class.Bootstrap.php | 10 +++++
views/bootstrap/class.Settings.php | 1 +
views/bootstrap/class.TransmittalMgr.php | 57 +++++++++++++++++++++---
views/bootstrap4/class.Bootstrap4.php | 10 +++++
8 files changed, 79 insertions(+), 6 deletions(-)
diff --git a/CHANGELOG b/CHANGELOG
index 7e85a6194..ecac07174 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -8,6 +8,7 @@
- fix creating user via rest api
- checkout info does not depend on whether the logged in user was substituted
- add new endpoints for managing roles by rest api
+- add transmittals in menu
--------------------------------------------------------------------------------
Changes in version 6.0.26
diff --git a/inc/inc.ClassSettings.php b/inc/inc.ClassSettings.php
index 99688f64e..31e17e58b 100644
--- a/inc/inc.ClassSettings.php
+++ b/inc/inc.ClassSettings.php
@@ -291,6 +291,8 @@ class Settings { /* {{{ */
var $_enableClipboard = true;
// show always clipboard in main menu, even if empty
var $_alwaysShowClipboard = false;
+ // enable/disable list of transmittals in main menu
+ var $_enableMenuTransmittals = false;
// enable/disable list of tasks in main menu
var $_enableMenuTasks = true;
// select which tasks show up in main menu
@@ -601,6 +603,7 @@ class Settings { /* {{{ */
$this->_enableSessionList = Settings::boolVal($tab["enableSessionList"]);
$this->_enableClipboard = Settings::boolVal($tab["enableClipboard"]);
$this->_alwaysShowClipboard = Settings::boolVal($tab["alwaysShowClipboard"]);
+ $this->_enableMenuTransmittals = Settings::boolVal($tab["enableMenuTransmittals"]);
$this->_enableMenuTasks = Settings::boolVal($tab["enableMenuTasks"]);
$this->_alwaysShowMenuTasks = Settings::boolVal($tab["alwaysShowMenuTasks"]);
$this->_tasksInMenu = Settings::arrayVal($tab["tasksInMenu"]);
@@ -1022,6 +1025,7 @@ class Settings { /* {{{ */
$this->setXMLAttributValue($node, "enableSessionList", $this->_enableSessionList);
$this->setXMLAttributValue($node, "enableClipboard", $this->_enableClipboard);
$this->setXMLAttributValue($node, "alwaysShowClipboard", $this->_alwaysShowClipboard);
+ $this->setXMLAttributValue($node, "enableMenuTransmittals", $this->_enableMenuTransmittals);
$this->setXMLAttributValue($node, "enableMenuTasks", $this->_enableMenuTasks);
$this->setXMLAttributValue($node, "alwaysShowMenuTasks", $this->_alwaysShowMenuTasks);
$this->setXMLAttributValue($node, "tasksInMenu", $this->_tasksInMenu);
diff --git a/inc/inc.ClassUI.php b/inc/inc.ClassUI.php
index 11b6ab922..73b2e42c6 100644
--- a/inc/inc.ClassUI.php
+++ b/inc/inc.ClassUI.php
@@ -153,6 +153,7 @@ class UI extends UI_Default {
$view->setParam('enablefoldertree', $settings->_enableFolderTree);
$view->setParam('enablelanguageselector', $settings->_enableLanguageSelector);
$view->setParam('enableclipboard', $settings->_enableClipboard);
+ $view->setParam('enablemenutransmittals', $settings->_enableMenuTransmittals);
$view->setParam('enablemenutasks', $settings->_enableMenuTasks);
$view->setParam('tasksinmenu', $settings->_tasksInMenu);
$view->setParam('enabledropfolderlist', $settings->_enableDropFolderList);
diff --git a/op/op.Settings.php b/op/op.Settings.php
index 97f8cdc77..573c0b5cd 100644
--- a/op/op.Settings.php
+++ b/op/op.Settings.php
@@ -138,6 +138,7 @@ if ($action == "saveSettings")
setBoolValue("enableSessionList");
setBoolValue("enableClipboard");
setBoolValue("alwaysShowClipboard");
+ setBoolValue("enableMenuTransmittals");
setBoolValue("enableMenuTasks");
setBoolValue("alwaysShowMenuTasks");
$settings->_tasksInMenu = isset($_POST["tasksInMenu"]) ? $_POST["tasksInMenu"] : array();
diff --git a/views/bootstrap/class.Bootstrap.php b/views/bootstrap/class.Bootstrap.php
index 3e73d5979..c4d6b1192 100644
--- a/views/bootstrap/class.Bootstrap.php
+++ b/views/bootstrap/class.Bootstrap.php
@@ -502,6 +502,16 @@ background-image: linear-gradient(to bottom, #882222, #111111);;
}
/* }}} End of menu tasks */
+ /* menu transmittals {{{ */
+ if($this->params['enablemenutransmittals']) {
+ if($accessobject->check_view_access('TransmittalMgr', array('action'=>'menuTransmittals'))) {
+ echo " ";
+ }
+ }
+ /* }}} End of menu tasks */
+
/* drop folder dir {{{ */
if($this->params['dropfolderdir'] && $this->params['enabledropfolderlist']) {
echo "