diff --git a/app/Http/Controllers/AccountController.php b/app/Http/Controllers/AccountController.php index 8887d46..b767dc4 100644 --- a/app/Http/Controllers/AccountController.php +++ b/app/Http/Controllers/AccountController.php @@ -10,13 +10,16 @@ use Illuminate\Http\Request; use Illuminate\Validation\Rule; use MightyPork\Utils\Str; +/** + * Account settings + */ class AccountController extends Controller { - public function editAccount() { return view('profile.edit-account', ['user' => user()]); } + public function storeAccount(Request $request) { $input = $this->validate($request, [ diff --git a/app/Http/Controllers/ProfileController.php b/app/Http/Controllers/ProfileController.php index 099bffd..8df2afd 100644 --- a/app/Http/Controllers/ProfileController.php +++ b/app/Http/Controllers/ProfileController.php @@ -6,10 +6,13 @@ namespace App\Http\Controllers; use App\Models\User; use Illuminate\Http\Request; +/** + * Profile page and profile settings + */ class ProfileController extends Controller { /** - * Show the application dashboard. + * Show the user's profile / dashboard. * * @return \Illuminate\View\View */ @@ -26,7 +29,6 @@ class ProfileController extends Controller /** * Edit own profile (this does not include auth settings etc) * - * @param User $user * @return \Illuminate\View\View */ public function editProfile() @@ -40,9 +42,9 @@ class ProfileController extends Controller public function storeProfile(Request $request) { $input = $this->validate($request, [ - 'bio' => ['nullable', VALI_TEXT], 'title' => ['required', VALI_LINE], - 'website' => ['required', VALI_LINE], + 'bio' => ['nullable', VALI_TEXT], + 'website' => ['nullable', VALI_LINE], ]); $user = user(); diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 2537cb7..0af6463 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -27,6 +27,37 @@ class AppServiceProvider extends ServiceProvider if (!$u) abort(404); return $u; }); + + \Blade::directive('tooltip', function($arg) { + $arge = e($arg); + return 'aria-label="' . $arge . '" title="' . $arge . '"'; + }); + + \Blade::directive('sr', function($arg) { + $sr = str_replace('~', ' ', e($arg)); + return ''.$sr.''; + }); + + \Blade::directive('icon', function($arg) { + // arg: classes... , alt text + // tildes in alt text may be used to add nbsp to sr-only, they are removed from the tooltip. + // giving no alt text makes it sr-hidden, with no tooltip + $parts = explode(',', $arg, 2); + if (count($parts) == 2) { + list($classes, $title) = $parts; + + $classes = trim($classes); + $title = trim($title); + + $sr = str_replace('~', ' ', e($title)); + $tit = str_replace('~', '', e(trim($title, ' \r\n\t:,'))); + + return '' . $sr . '' . + ''; + } else { + return ''; + } + }); } /** diff --git a/public/fonts/fa-dtbl-1-preview.html b/public/fonts/fa-dtbl-1-preview.html index 93c87d3..076266b 100644 --- a/public/fonts/fa-dtbl-1-preview.html +++ b/public/fonts/fa-dtbl-1-preview.html @@ -170,6 +170,7 @@ .fa-clock-o:before, .fa-cloud-upload:before, .fa-code-fork:before, +.fa-comments:before, .fa-download:before, .fa-eye:before, .fa-eye-slash:before, @@ -184,6 +185,7 @@ .fa-history:before, .fa-key-modern:before, .fa-link:before, +.fa-pencil:before, .fa-pencil-square-o:before, .fa-question-circle:before, .fa-quote-left:before, @@ -200,6 +202,7 @@ .fa-star:before, .fa-star-o:before, .fa-table:before, +.fa-th-list:before, .fa-times:before, .fa-trash:before, .fa-trash-o:before, @@ -229,42 +232,45 @@ .fa-clock-o:before { content: "\f106"; } .fa-cloud-upload:before { content: "\f107"; } .fa-code-fork:before { content: "\f108"; } -.fa-download:before { content: "\f109"; } -.fa-eye:before { content: "\f10a"; } -.fa-eye-slash:before { content: "\f10b"; } -.fa-facebook-square:before { content: "\f10c"; } -.fa-filter:before { content: "\f10d"; } -.fa-flag:before { content: "\f10e"; } -.fa-floppy-o:before { content: "\f10f"; } -.fa-gavel:before { content: "\f110"; } -.fa-github:before { content: "\f111"; } -.fa-globe:before { content: "\f112"; } -.fa-google:before { content: "\f113"; } -.fa-history:before { content: "\f114"; } -.fa-key-modern:before { content: "\f115"; } -.fa-link:before { content: "\f116"; } -.fa-pencil-square-o:before { content: "\f117"; } -.fa-question-circle:before { content: "\f118"; } -.fa-quote-left:before { content: "\f119"; } -.fa-reply:before { content: "\f11a"; } -.fa-rss:before { content: "\f11b"; } -.fa-search:before { content: "\f11c"; } -.fa-share-alt:before { content: "\f11d"; } -.fa-sign-in:before { content: "\f11e"; } -.fa-sign-out:before { content: "\f11f"; } -.fa-sliders:before { content: "\f120"; } -.fa-sort:before { content: "\f121"; } -.fa-sort-asc:before { content: "\f122"; } -.fa-sort-desc:before { content: "\f123"; } -.fa-star:before { content: "\f124"; } -.fa-star-o:before { content: "\f125"; } -.fa-table:before { content: "\f126"; } -.fa-times:before { content: "\f127"; } -.fa-trash:before { content: "\f128"; } -.fa-trash-o:before { content: "\f129"; } -.fa-user-circle-o:before { content: "\f12a"; } -.fa-user-plus:before { content: "\f12b"; } -.fa-wrench:before { content: "\f12c"; } +.fa-comments:before { content: "\f109"; } +.fa-download:before { content: "\f10a"; } +.fa-eye:before { content: "\f10b"; } +.fa-eye-slash:before { content: "\f10c"; } +.fa-facebook-square:before { content: "\f10d"; } +.fa-filter:before { content: "\f10e"; } +.fa-flag:before { content: "\f10f"; } +.fa-floppy-o:before { content: "\f110"; } +.fa-gavel:before { content: "\f111"; } +.fa-github:before { content: "\f112"; } +.fa-globe:before { content: "\f113"; } +.fa-google:before { content: "\f114"; } +.fa-history:before { content: "\f115"; } +.fa-key-modern:before { content: "\f116"; } +.fa-link:before { content: "\f117"; } +.fa-pencil:before { content: "\f118"; } +.fa-pencil-square-o:before { content: "\f119"; } +.fa-question-circle:before { content: "\f11a"; } +.fa-quote-left:before { content: "\f11b"; } +.fa-reply:before { content: "\f11c"; } +.fa-rss:before { content: "\f11d"; } +.fa-search:before { content: "\f11e"; } +.fa-share-alt:before { content: "\f11f"; } +.fa-sign-in:before { content: "\f120"; } +.fa-sign-out:before { content: "\f121"; } +.fa-sliders:before { content: "\f122"; } +.fa-sort:before { content: "\f123"; } +.fa-sort-asc:before { content: "\f124"; } +.fa-sort-desc:before { content: "\f125"; } +.fa-star:before { content: "\f126"; } +.fa-star-o:before { content: "\f127"; } +.fa-table:before { content: "\f128"; } +.fa-th-list:before { content: "\f129"; } +.fa-times:before { content: "\f12a"; } +.fa-trash:before { content: "\f12b"; } +.fa-trash-o:before { content: "\f12c"; } +.fa-user-circle-o:before { content: "\f12d"; } +.fa-user-plus:before { content: "\f12e"; } +.fa-wrench:before { content: "\f12f"; } @@ -280,7 +286,7 @@
-

fa-dtbl-1 contains 45 glyphs:

+

fa-dtbl-1 contains 48 glyphs:

Toggle Preview Characters
@@ -403,6 +409,19 @@
+
+
+ PpPpPpPpPpPpPpPpPpPp +
+
+ 12141618212436486072 +
+
+ + +
+
+
PpPpPpPpPpPpPpPpPpPp @@ -412,7 +431,7 @@
- +
@@ -425,7 +444,7 @@
- +
@@ -438,7 +457,7 @@
- +
@@ -451,7 +470,7 @@
- +
@@ -464,7 +483,7 @@
- +
@@ -477,7 +496,7 @@
- +
@@ -491,7 +510,7 @@
- +
@@ -505,7 +524,7 @@
- +
@@ -518,7 +537,7 @@
- +
@@ -531,7 +550,7 @@
- +
@@ -544,7 +563,7 @@
- +
@@ -557,7 +576,7 @@
- +
@@ -570,7 +589,7 @@
- +
@@ -583,7 +602,20 @@
- + +
+ + +
+
+ PpPpPpPpPpPpPpPpPpPp +
+
+ 12141618212436486072 +
+
+ +
@@ -597,7 +629,7 @@
- +
@@ -610,7 +642,7 @@
- +
@@ -623,7 +655,7 @@
- +
@@ -636,7 +668,7 @@
- +
@@ -649,7 +681,7 @@
- +
@@ -662,7 +694,7 @@
- +
@@ -675,7 +707,7 @@
- +
@@ -688,7 +720,7 @@
- +
@@ -701,7 +733,7 @@
- +
@@ -714,7 +746,7 @@
- +
@@ -727,7 +759,7 @@
- +
@@ -740,7 +772,7 @@
- +
@@ -753,7 +785,7 @@
- +
@@ -766,7 +798,7 @@
- +
@@ -779,7 +811,7 @@
- +
@@ -792,7 +824,20 @@
- + +
+ + +
+
+ PpPpPpPpPpPpPpPpPpPp +
+
+ 12141618212436486072 +
+
+ +
@@ -806,7 +851,7 @@
- +
@@ -819,7 +864,7 @@
- +
@@ -832,7 +877,7 @@
- +
@@ -845,7 +890,7 @@
- +
@@ -858,7 +903,7 @@
- +
@@ -871,7 +916,7 @@
- +
diff --git a/public/fonts/fa-dtbl-1.css b/public/fonts/fa-dtbl-1.css index ec428cb..4649bcf 100644 --- a/public/fonts/fa-dtbl-1.css +++ b/public/fonts/fa-dtbl-1.css @@ -47,39 +47,42 @@ .fa-clock-o::before { content: "\f106"; } .fa-cloud-upload::before { content: "\f107"; } .fa-code-fork::before { content: "\f108"; } -.fa-download::before { content: "\f109"; } -.fa-eye::before { content: "\f10a"; } -.fa-eye-slash::before { content: "\f10b"; } -.fa-facebook-square::before { content: "\f10c"; } -.fa-filter::before { content: "\f10d"; } -.fa-flag::before { content: "\f10e"; } -.fa-floppy-o::before, .fa-save::before { content: "\f10f"; } -.fa-gavel::before, .fa-legal::before { content: "\f110"; } -.fa-github::before { content: "\f111"; } -.fa-globe::before { content: "\f112"; } -.fa-google::before { content: "\f113"; } -.fa-history::before { content: "\f114"; } -.fa-key-modern::before { content: "\f115"; } -.fa-link::before { content: "\f116"; } -.fa-pencil-square-o::before, .fa-edit::before { content: "\f117"; } -.fa-question-circle::before { content: "\f118"; } -.fa-quote-left::before { content: "\f119"; } -.fa-reply::before { content: "\f11a"; } -.fa-rss::before { content: "\f11b"; } -.fa-search::before { content: "\f11c"; } -.fa-share-alt::before { content: "\f11d"; } -.fa-sign-in::before { content: "\f11e"; } -.fa-sign-out::before { content: "\f11f"; } -.fa-sliders::before { content: "\f120"; } -.fa-sort::before { content: "\f121"; } -.fa-sort-asc::before { content: "\f122"; } -.fa-sort-desc::before { content: "\f123"; } -.fa-star::before { content: "\f124"; } -.fa-star-o::before { content: "\f125"; } -.fa-table::before { content: "\f126"; } -.fa-times::before, .fa-close::before { content: "\f127"; } -.fa-trash::before { content: "\f128"; } -.fa-trash-o::before { content: "\f129"; } -.fa-user-circle-o::before { content: "\f12a"; } -.fa-user-plus::before { content: "\f12b"; } -.fa-wrench::before { content: "\f12c"; } +.fa-comments::before { content: "\f109"; } +.fa-download::before { content: "\f10a"; } +.fa-eye::before { content: "\f10b"; } +.fa-eye-slash::before { content: "\f10c"; } +.fa-facebook-square::before { content: "\f10d"; } +.fa-filter::before { content: "\f10e"; } +.fa-flag::before { content: "\f10f"; } +.fa-floppy-o::before, .fa-save::before { content: "\f110"; } +.fa-gavel::before, .fa-legal::before { content: "\f111"; } +.fa-github::before { content: "\f112"; } +.fa-globe::before { content: "\f113"; } +.fa-google::before { content: "\f114"; } +.fa-history::before { content: "\f115"; } +.fa-key-modern::before { content: "\f116"; } +.fa-link::before { content: "\f117"; } +.fa-pencil::before { content: "\f118"; } +.fa-pencil-square-o::before, .fa-edit::before { content: "\f119"; } +.fa-question-circle::before { content: "\f11a"; } +.fa-quote-left::before { content: "\f11b"; } +.fa-reply::before { content: "\f11c"; } +.fa-rss::before { content: "\f11d"; } +.fa-search::before { content: "\f11e"; } +.fa-share-alt::before { content: "\f11f"; } +.fa-sign-in::before { content: "\f120"; } +.fa-sign-out::before { content: "\f121"; } +.fa-sliders::before { content: "\f122"; } +.fa-sort::before { content: "\f123"; } +.fa-sort-asc::before { content: "\f124"; } +.fa-sort-desc::before { content: "\f125"; } +.fa-star::before { content: "\f126"; } +.fa-star-o::before { content: "\f127"; } +.fa-table::before { content: "\f128"; } +.fa-th-list::before { content: "\f129"; } +.fa-times::before, .fa-close::before { content: "\f12a"; } +.fa-trash::before { content: "\f12b"; } +.fa-trash-o::before { content: "\f12c"; } +.fa-user-circle-o::before { content: "\f12d"; } +.fa-user-plus::before { content: "\f12e"; } +.fa-wrench::before { content: "\f12f"; } diff --git a/public/fonts/fa-dtbl-1.eot b/public/fonts/fa-dtbl-1.eot index 3fc4d1f..f9fe723 100644 Binary files a/public/fonts/fa-dtbl-1.eot and b/public/fonts/fa-dtbl-1.eot differ diff --git a/public/fonts/fa-dtbl-1.svg b/public/fonts/fa-dtbl-1.svg index 5bf0402..0eab3bb 100644 --- a/public/fonts/fa-dtbl-1.svg +++ b/public/fonts/fa-dtbl-1.svg @@ -1,11 +1,11 @@ -Created by FontForge 20170805 at Wed Jul 25 20:38:52 2018 +Created by FontForge 20170805 at Sat Jul 28 09:08:34 2018 By ondra The Fork Awesome font is licensed under the SIL OFL 1.1 (http://scripts.sil.org/OFL). Fork Awesome is a fork based of off Font Awesome 4.7.0 by Dave Gandy. More info on licenses at https://forkawesome.github.io @@ -22,7 +22,7 @@ The Fork Awesome font is licensed under the SIL OFL 1.1 (http://scripts.sil.org/ bbox="-0.0376684 -256 2048 1536.01" underline-thickness="89.6" underline-position="-179.2" - unicode-range="U+0020-F12C" + unicode-range="U+0020-F12F" /> - + - - - - - - - - - - - - - - + - - - - - - - - - - - - - - - - + - - - - - diff --git a/public/fonts/fa-dtbl-1.ttf b/public/fonts/fa-dtbl-1.ttf index d669212..41d1c4e 100644 Binary files a/public/fonts/fa-dtbl-1.ttf and b/public/fonts/fa-dtbl-1.ttf differ diff --git a/public/fonts/fa-dtbl-1.woff2 b/public/fonts/fa-dtbl-1.woff2 index cd4d79b..bc4871a 100644 Binary files a/public/fonts/fa-dtbl-1.woff2 and b/public/fonts/fa-dtbl-1.woff2 differ diff --git a/resources/assets/sass/_bootstrap.scss b/resources/assets/sass/_bootstrap.scss index f1722c4..bbb5065 100644 --- a/resources/assets/sass/_bootstrap.scss +++ b/resources/assets/sass/_bootstrap.scss @@ -3,6 +3,7 @@ @import "~bootstrap/scss/mixins"; @import "bootstrap-customizations/variables"; +@import "bootstrap-customizations/_helpers-before"; @import "~bootstrap/scss/root"; @import "~bootstrap/scss/reboot"; diff --git a/resources/assets/sass/_fa-utils.scss b/resources/assets/sass/_fa-utils.scss index fe09203..94de8cf 100644 --- a/resources/assets/sass/_fa-utils.scss +++ b/resources/assets/sass/_fa-utils.scss @@ -3,6 +3,25 @@ .fa-pr::before { margin-right: $sp1; } +.fa-pl::before { + margin-left: $sp1; +} + +.fa-pr2::before { + margin-right: $sp2; + } +.fa-pl2::before { + margin-left: $sp2; +} + +.fa-px::before { + margin-left: $sp1; + margin-right: $sp1; +} +.fa-px2::before { + margin-left: $sp2; + margin-right: $sp2; +} .fa-large.fa-pr::before { margin-right: $sp2; diff --git a/resources/assets/sass/bootstrap-customizations/_card.scss b/resources/assets/sass/bootstrap-customizations/_card.scss index d6bf159..41b11a7 100644 --- a/resources/assets/sass/bootstrap-customizations/_card.scss +++ b/resources/assets/sass/bootstrap-customizations/_card.scss @@ -4,6 +4,15 @@ font-weight: bold; } +.card-header { + h1, h2, h3 { + font-size: 1em; + margin: 0; + padding: 0; + font-weight: bold; + } +} + .card { box-shadow: 0 2px 3px rgba(black, .3); } diff --git a/resources/assets/sass/bootstrap-customizations/_helpers-before.scss b/resources/assets/sass/bootstrap-customizations/_helpers-before.scss new file mode 100644 index 0000000..879ea02 --- /dev/null +++ b/resources/assets/sass/bootstrap-customizations/_helpers-before.scss @@ -0,0 +1,19 @@ +// this is before the rest of bootstrap to get the right paddings in grid +.sr-list { + @include list-unstyled; + margin-bottom: 0; + + > li { + display: inline-block; + &:not(:last-child) { + margin-right: $list-inline-padding; + } + } + + &.sr-list-tight { + > li { + display: inline-block; + margin-right: 0; + } + } +} diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php index bbd021f..1b7086d 100644 --- a/resources/views/auth/login.blade.php +++ b/resources/views/auth/login.blade.php @@ -5,7 +5,9 @@
-
{{ __('Login') }}
+
+

{{ __('Login') }}

+
@@ -18,11 +20,11 @@ {!! Widget::checkbox('remember', 'Remember Me')->checked(false) !!}
-
- {{-- - --}}{{ __('Forgot Your Password?') }}{{-- - --}}{{ __('Register') }} -
+
@@ -31,28 +33,30 @@
…or authenticate with -
+
+
diff --git a/resources/views/auth/register.blade.php b/resources/views/auth/register.blade.php index d82772b..9746b87 100644 --- a/resources/views/auth/register.blade.php +++ b/resources/views/auth/register.blade.php @@ -5,7 +5,9 @@
-
{{ __('Register') }}
+
+

{{ __('Register') }}

+
diff --git a/resources/views/layouts/footer.blade.php b/resources/views/layouts/footer.blade.php index 9de8f4c..ecd8815 100644 --- a/resources/views/layouts/footer.blade.php +++ b/resources/views/layouts/footer.blade.php @@ -1,18 +1,23 @@ {{-- Global footer --}} diff --git a/resources/views/layouts/main-nav.blade.php b/resources/views/layouts/main-nav.blade.php index 17ff889..f68837a 100644 --- a/resources/views/layouts/main-nav.blade.php +++ b/resources/views/layouts/main-nav.blade.php @@ -2,8 +2,8 @@
@@ -67,20 +81,20 @@
- +

@if(authed() && user()->is($user)) Your Tables @else User's Tables @endif - +

@if(authed() && user()->is($user)) - New + New @endif
diff --git a/resources/views/table/create.blade.php b/resources/views/table/create.blade.php index 55b6fc2..b64fb4b 100644 --- a/resources/views/table/create.blade.php +++ b/resources/views/table/create.blade.php @@ -49,7 +49,7 @@