diff --git a/src/Admin/Sass/site.scss b/src/Admin/Sass/site.scss index 6f7b5b2161..70899fb282 100644 --- a/src/Admin/Sass/site.scss +++ b/src/Admin/Sass/site.scss @@ -1 +1,30 @@ -@import "../node_modules/bootstrap/scss/bootstrap.scss"; +$theme-colors: ( "primary": #3c8dbc, "primary-accent": #286090, "danger": #dd4b39, "success": #00a65a, "info": #555555, "warning": #bf7e16); +$font-family-sans-serif: 'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'; + +$h1-font-size: 2rem; +$h2-font-size: 1.3rem; +$h3-font-size: 1rem; +$h4-font-size: 1rem; +$h5-font-size: 1rem; +$h6-font-size: 1rem; + +@import "../node_modules/bootstrap/scss/bootstrap.scss"; + +h1 { + border-bottom: 1px solid $border-color; + margin-bottom: 20px; + + small { + color: $text-muted; + font-size: $h1-font-size * .5; + } +} + +h2 { + text-transform: uppercase; + font-weight: bold; +} + +h3 { + text-transform: uppercase; +} diff --git a/src/Admin/Views/Home/Index.cshtml b/src/Admin/Views/Home/Index.cshtml index f5069295dd..62371a7981 100644 --- a/src/Admin/Views/Home/Index.cshtml +++ b/src/Admin/Views/Home/Index.cshtml @@ -60,29 +60,29 @@
-
Core Installed
-
+
Core Installed
+
@Model.CurrentVersion
-
Core Latest
-
+
Core Latest
+
-
Web Installed
-
+
Web Installed
+
-
Web Latest
-
+
Web Latest
+
@@ -101,83 +101,83 @@

SMTP

@if(Model.GlobalSettings.Mail.Smtp == null) { -

Not configured

+

Not configured

} else { -
-
Host
-
- @(string.IsNullOrWhiteSpace(Model.GlobalSettings.Mail.Smtp.Host) ? "-" : Model.GlobalSettings.Mail.Smtp.Host) -
+
+
Host
+
+ @(string.IsNullOrWhiteSpace(Model.GlobalSettings.Mail.Smtp.Host) ? "-" : Model.GlobalSettings.Mail.Smtp.Host) +
-
Port
-
@Model.GlobalSettings.Mail.Smtp.Port
+
Port
+
@Model.GlobalSettings.Mail.Smtp.Port
-
SSL
-
@(Model.GlobalSettings.Mail.Smtp.Ssl ? "Yes" : "No")
+
SSL
+
@(Model.GlobalSettings.Mail.Smtp.Ssl ? "Yes" : "No")
-
Credentials
-
@(Model.GlobalSettings.Mail.Smtp.UseDefaultCredentials ? "Default" : "Provided")
+
Credentials
+
@(Model.GlobalSettings.Mail.Smtp.UseDefaultCredentials ? "Default" : "Provided")
-
Username
-
- @(string.IsNullOrWhiteSpace(Model.GlobalSettings.Mail.Smtp.Username) ? "-" : Model.GlobalSettings.Mail.Smtp.Username) -
-
+
Username
+
+ @(string.IsNullOrWhiteSpace(Model.GlobalSettings.Mail.Smtp.Username) ? "-" : Model.GlobalSettings.Mail.Smtp.Username) +
+
}

Other

-
Installation Id
-
+
Installation Id
+
@if(Model.GlobalSettings.Installation?.Id != null) { - @Model.GlobalSettings.Installation.Id + @Model.GlobalSettings.Installation.Id } else { - - + - }
-
User Registraion
-
@(Model.GlobalSettings.DisableUserRegistration ? "Disabled" : "Enabled")
+
User Registraion
+
@(Model.GlobalSettings.DisableUserRegistration ? "Disabled" : "Enabled")
-
Push Notifications Relay
-
+
Push Notifications
+
@if(Bit.Core.Utilities.CoreHelpers.SettingHasValue(Model.GlobalSettings.PushRelayBaseUri)) { - Configured + Configured } else { - Not configured + Not configured }
-
Yubico 2FA
-
+
Yubico 2FA
+
@if(Bit.Core.Utilities.CoreHelpers.SettingHasValue(Model.GlobalSettings.Yubico?.Key) && Bit.Core.Utilities.CoreHelpers.SettingHasValue(Model.GlobalSettings.Yubico?.ClientId)) { - Configured + Configured } else { - Not configured + Not configured }
-
Duo 2FA
-
+
Duo 2FA
+
@if(Bit.Core.Utilities.CoreHelpers.SettingHasValue(Model.GlobalSettings.Duo?.AKey)) { - Configured + Configured } else { - Not configured + Not configured }
diff --git a/src/Admin/Views/Organizations/Edit.cshtml b/src/Admin/Views/Organizations/Edit.cshtml index 87a8a5fff3..3560fa7190 100644 --- a/src/Admin/Views/Organizations/Edit.cshtml +++ b/src/Admin/Views/Organizations/Edit.cshtml @@ -85,7 +85,7 @@
-
+
@@ -441,7 +441,7 @@
-
+
diff --git a/src/Admin/Views/Organizations/_ViewInformation.cshtml b/src/Admin/Views/Organizations/_ViewInformation.cshtml index 6a80a398fd..b716f2983a 100644 --- a/src/Admin/Views/Organizations/_ViewInformation.cshtml +++ b/src/Admin/Views/Organizations/_ViewInformation.cshtml @@ -1,20 +1,20 @@ @model OrganizationViewModel
-
Id
-
@Model.Organization.Id
+
Id
+
@Model.Organization.Id
-
Users
-
@Model.UserCount
+
Users
+
@Model.UserCount
-
Owners
-
@(string.IsNullOrWhiteSpace(Model.Owners) ? "None" : Model.Owners)
+
Owners
+
@(string.IsNullOrWhiteSpace(Model.Owners) ? "None" : Model.Owners)
-
Admins
-
@(string.IsNullOrWhiteSpace(Model.Admins) ? "None" : Model.Admins)
+
Admins
+
@(string.IsNullOrWhiteSpace(Model.Admins) ? "None" : Model.Admins)
-
Created
-
@Model.Organization.CreationDate.ToString()
+
Created
+
@Model.Organization.CreationDate.ToString()
-
Modified
-
@Model.Organization.RevisionDate.ToString()
+
Modified
+
@Model.Organization.RevisionDate.ToString()
diff --git a/src/Admin/Views/Shared/_Layout.cshtml b/src/Admin/Views/Shared/_Layout.cshtml index 9548fdbe6f..02371ce29c 100644 --- a/src/Admin/Views/Shared/_Layout.cshtml +++ b/src/Admin/Views/Shared/_Layout.cshtml @@ -6,6 +6,7 @@ @ViewData["Title"] - Bitwarden Admin Portal + diff --git a/src/Admin/Views/Users/Edit.cshtml b/src/Admin/Views/Users/Edit.cshtml index bbae6c5b03..074a707484 100644 --- a/src/Admin/Views/Users/Edit.cshtml +++ b/src/Admin/Views/Users/Edit.cshtml @@ -74,7 +74,7 @@
-
+
@@ -87,7 +87,7 @@
-
+
@@ -108,7 +108,7 @@

Billing

-
+
@@ -119,7 +119,7 @@
-
+
@@ -132,7 +132,7 @@
-
+
diff --git a/src/Admin/Views/Users/_ViewInformation.cshtml b/src/Admin/Views/Users/_ViewInformation.cshtml index f010a22379..a47c914828 100644 --- a/src/Admin/Views/Users/_ViewInformation.cshtml +++ b/src/Admin/Views/Users/_ViewInformation.cshtml @@ -1,17 +1,17 @@ @model UserViewModel
-
Id
-
@Model.User.Id
+
Id
+
@Model.User.Id
-
Items
-
@Model.CipherCount
+
Items
+
@Model.CipherCount
-
Created
-
@Model.User.CreationDate.ToString()
+
Created
+
@Model.User.CreationDate.ToString()
-
Modified
-
@Model.User.RevisionDate.ToString()
+
Modified
+
@Model.User.RevisionDate.ToString()
-
Account Modified
-
@Model.User.AccountRevisionDate.ToString()
+
Account Modified
+
@Model.User.AccountRevisionDate.ToString()
diff --git a/src/Admin/gulpfile.js b/src/Admin/gulpfile.js index 451fec7859..319d058208 100644 --- a/src/Admin/gulpfile.js +++ b/src/Admin/gulpfile.js @@ -4,6 +4,7 @@ const gulp = require('gulp'), rimraf = require('rimraf'), merge = require('merge-stream'), runSequence = require('run-sequence'), + googleWebFonts = require('gulp-google-webfonts'), concat = require('gulp-concat'), cssmin = require('gulp-cssmin'), uglify = require('gulp-uglify'), @@ -78,6 +79,15 @@ gulp.task('sass:watch', () => { gulp.watch(paths.sass, ['sass']); }); -gulp.task('build', function (cb) { - return runSequence('clean', ['lib', 'sass'], cb); +gulp.task('webfonts', () => { + return gulp.src('./webfonts.list') + .pipe(googleWebFonts({ + fontsDir: 'webfonts', + cssFilename: 'webfonts.css' + })) + .pipe(gulp.dest(paths.cssDir)); +}); + +gulp.task('build', function (cb) { + return runSequence('clean', ['lib', 'sass', 'webfonts'], cb); }); diff --git a/src/Admin/package-lock.json b/src/Admin/package-lock.json index 44d8ff6c76..6863bf39b4 100644 --- a/src/Admin/package-lock.json +++ b/src/Admin/package-lock.json @@ -187,6 +187,12 @@ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", "dev": true }, + "async": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", + "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=", + "dev": true + }, "async-foreach": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", @@ -1670,6 +1676,97 @@ } } }, + "gulp-google-webfonts": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulp-google-webfonts/-/gulp-google-webfonts-1.0.0.tgz", + "integrity": "sha512-iNiNuGYb9F4hWLWK+A2H7B4RFrtUTudDUzuqdYBMqQ+1l9T2XWnHBtPzuxnV6avZBnV9C6YH/VZMrOFzN6241A==", + "dev": true, + "requires": { + "async": "0.9.2", + "commander": "2.15.1", + "lodash.defaults": "3.1.2", + "mkdirp": "0.5.1", + "through2": "0.6.5", + "vinyl": "2.1.0" + }, + "dependencies": { + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "clone-stats": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true + }, + "lodash.assign": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-3.2.0.tgz", + "integrity": "sha1-POnwI0tLIiPilrj6CsH+6OvKZPo=", + "dev": true, + "requires": { + "lodash._baseassign": "3.2.0", + "lodash._createassigner": "3.1.1", + "lodash.keys": "3.1.2" + } + }, + "lodash.defaults": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-3.1.2.tgz", + "integrity": "sha1-xzCLGNv4vJNy1wGnNJPGEZK9Liw=", + "dev": true, + "requires": { + "lodash.assign": "3.2.0", + "lodash.restparam": "3.6.1" + } + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "0.0.1", + "string_decoder": "0.10.31" + } + }, + "replace-ext": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": "1.0.34", + "xtend": "4.0.1" + } + }, + "vinyl": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.1.0.tgz", + "integrity": "sha1-Ah+cLPlR1rk5lDyJ617lrdT9kkw=", + "dev": true, + "requires": { + "clone": "2.1.2", + "clone-buffer": "1.0.0", + "clone-stats": "1.0.0", + "cloneable-readable": "1.1.2", + "remove-trailing-separator": "1.1.0", + "replace-ext": "1.0.0" + } + } + } + }, "gulp-rename": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-1.1.0.tgz", @@ -2265,6 +2362,16 @@ "integrity": "sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE=", "dev": true }, + "lodash._baseassign": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", + "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", + "dev": true, + "requires": { + "lodash._basecopy": "3.0.1", + "lodash.keys": "3.1.2" + } + }, "lodash._basecopy": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", @@ -2283,6 +2390,23 @@ "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=", "dev": true }, + "lodash._bindcallback": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz", + "integrity": "sha1-5THCdkTPi1epnhftlbNcdIeJOS4=", + "dev": true + }, + "lodash._createassigner": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/lodash._createassigner/-/lodash._createassigner-3.1.1.tgz", + "integrity": "sha1-g4pbri/aymOsIt7o4Z+k5taXCxE=", + "dev": true, + "requires": { + "lodash._bindcallback": "3.0.1", + "lodash._isiterateecall": "3.0.9", + "lodash.restparam": "3.6.1" + } + }, "lodash._escapehtmlchar": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._escapehtmlchar/-/lodash._escapehtmlchar-2.4.1.tgz", diff --git a/src/Admin/package.json b/src/Admin/package.json index f948c4c99a..4dbd60d1db 100644 --- a/src/Admin/package.json +++ b/src/Admin/package.json @@ -10,6 +10,7 @@ "gulp-cssmin": "0.2.0", "gulp-uglify": "3.0.0", "gulp-sass": "3.1.0", + "gulp-google-webfonts": "1.0.0", "bootstrap": "4.0.0", "font-awesome": "4.7.0", "popper.js": "1.14.1", diff --git a/src/Admin/webfonts.list b/src/Admin/webfonts.list new file mode 100644 index 0000000000..1818dc4a43 --- /dev/null +++ b/src/Admin/webfonts.list @@ -0,0 +1 @@ +Open+Sans:300,300i,400,400i,600,600i,700,700i,800,800i&subset=cyrillic,cyrillic-ext,greek,greek-ext,latin-ext \ No newline at end of file