parent
ba721592cd
commit
3242ae9cbe
@ -0,0 +1,15 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace App\Facades; |
||||||
|
|
||||||
|
use Illuminate\Support\Facades\Facade; |
||||||
|
use App\View\WidgetFactory; |
||||||
|
|
||||||
|
/** Facade for easy widget rendering in View */ |
||||||
|
class WidgetFacade extends Facade |
||||||
|
{ |
||||||
|
protected static function getFacadeAccessor() |
||||||
|
{ |
||||||
|
return WidgetFactory::class; |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,108 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
|
||||||
|
namespace App\View; |
||||||
|
|
||||||
|
/** |
||||||
|
* Widget |
||||||
|
* |
||||||
|
* @property-read string $name |
||||||
|
* @property-read string $id |
||||||
|
* @property-read string $label |
||||||
|
* @property-read string|null $help |
||||||
|
* @property-read string|null $value |
||||||
|
* @property-read string $attributes |
||||||
|
*/ |
||||||
|
class Widget |
||||||
|
{ |
||||||
|
private $attributes = [], |
||||||
|
$id, $name, $label, $value, |
||||||
|
$viewName, |
||||||
|
$help, |
||||||
|
$style = []; |
||||||
|
|
||||||
|
public function __construct($viewName, $name, $label) |
||||||
|
{ |
||||||
|
$this->id = 'field-'.$name; |
||||||
|
$this->name = $name; |
||||||
|
$this->label = $label; |
||||||
|
$this->viewName = $viewName; |
||||||
|
} |
||||||
|
|
||||||
|
// setting attributes via magic method |
||||||
|
public function __call($method, $args) |
||||||
|
{ |
||||||
|
static $cssProps = [ |
||||||
|
'height', 'minHeight', 'maxHeight' |
||||||
|
]; |
||||||
|
|
||||||
|
if (empty($args)) $args = ['']; |
||||||
|
|
||||||
|
$arg = $args[0]; |
||||||
|
|
||||||
|
// css |
||||||
|
$lccamel = $method; |
||||||
|
if (in_array($lccamel, $cssProps)) { |
||||||
|
return $this->css(kebab_case($lccamel), $arg); |
||||||
|
} |
||||||
|
|
||||||
|
if (property_exists($this, $method)) { |
||||||
|
$this->$method = $arg; |
||||||
|
} |
||||||
|
else { |
||||||
|
$this->attributes[$method] = $arg; |
||||||
|
} |
||||||
|
|
||||||
|
return $this; |
||||||
|
} |
||||||
|
|
||||||
|
public function css($prop, $val) |
||||||
|
{ |
||||||
|
$this->style[$prop] = $val; |
||||||
|
return $this; |
||||||
|
} |
||||||
|
|
||||||
|
public function __get($name) |
||||||
|
{ |
||||||
|
if ($name == 'attributes') { |
||||||
|
return $this->compileAttribs(); |
||||||
|
} |
||||||
|
|
||||||
|
if ($name == 'value') { |
||||||
|
return old($this->name, $this->value); |
||||||
|
} |
||||||
|
|
||||||
|
if (property_exists($this, $name)) { |
||||||
|
return $this->$name; |
||||||
|
} |
||||||
|
|
||||||
|
return null; |
||||||
|
} |
||||||
|
|
||||||
|
public function compileAttribs() |
||||||
|
{ |
||||||
|
// compile attribs string |
||||||
|
$attribs_s = array_reduce(array_keys($this->attributes), function ($carry, $key) { |
||||||
|
return $carry . ' ' . $key . '="' . e($this->attributes[$key]) . '"'; |
||||||
|
}, ''); |
||||||
|
|
||||||
|
// add a compiled list of styles |
||||||
|
if (!empty($this->style)) { |
||||||
|
$attribs_s .= 'style="'.trim(e(array_reduce(array_keys($this->style), function ($carry, $key) { |
||||||
|
return $carry . $key . ': ' . $this->style[$key] . '; '; |
||||||
|
}, ''))).'"'; |
||||||
|
} |
||||||
|
|
||||||
|
return trim($attribs_s); |
||||||
|
} |
||||||
|
|
||||||
|
public function render() |
||||||
|
{ |
||||||
|
return view('form.'.$this->viewName)->with(['w' => $this]); |
||||||
|
} |
||||||
|
|
||||||
|
public function __toString() |
||||||
|
{ |
||||||
|
return (string) $this->render(); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,27 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
|
||||||
|
namespace App\View; |
||||||
|
|
||||||
|
class WidgetFactory |
||||||
|
{ |
||||||
|
public function text($name, $label) |
||||||
|
{ |
||||||
|
return new Widget('input', $name, $label); |
||||||
|
} |
||||||
|
|
||||||
|
public function number($name, $label) |
||||||
|
{ |
||||||
|
return new Widget('number', $name, $label); |
||||||
|
} |
||||||
|
|
||||||
|
public function email($name, $label) |
||||||
|
{ |
||||||
|
return new Widget('email', $name, $label); |
||||||
|
} |
||||||
|
|
||||||
|
public function textarea($name, $label) |
||||||
|
{ |
||||||
|
return (new Widget('textarea', $name, $label))->minHeight('4em'); |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,386 @@ |
|||||||
|
<!DOCTYPE html> |
||||||
|
<html> |
||||||
|
<head> |
||||||
|
<title>fa-dtbl-1 glyphs preview</title> |
||||||
|
|
||||||
|
<style> |
||||||
|
/* Page Styles */ |
||||||
|
|
||||||
|
* { |
||||||
|
-moz-box-sizing: border-box; |
||||||
|
-webkit-box-sizing: border-box; |
||||||
|
box-sizing: border-box; |
||||||
|
margin: 0; |
||||||
|
padding: 0; |
||||||
|
} |
||||||
|
|
||||||
|
body { |
||||||
|
background: #fff; |
||||||
|
color: #444; |
||||||
|
font: 16px/1.5 "Helvetica Neue", Helvetica, Arial, sans-serif; |
||||||
|
} |
||||||
|
|
||||||
|
a, |
||||||
|
a:visited { |
||||||
|
color: #888; |
||||||
|
text-decoration: underline; |
||||||
|
} |
||||||
|
a:hover, |
||||||
|
a:focus { color: #000; } |
||||||
|
|
||||||
|
header { |
||||||
|
border-bottom: 2px solid #ddd; |
||||||
|
margin-bottom: 20px; |
||||||
|
overflow: hidden; |
||||||
|
padding: 20px 0; |
||||||
|
} |
||||||
|
|
||||||
|
header h1 { |
||||||
|
color: #888; |
||||||
|
float: left; |
||||||
|
font-size: 36px; |
||||||
|
font-weight: 300; |
||||||
|
} |
||||||
|
|
||||||
|
header a { |
||||||
|
float: right; |
||||||
|
font-size: 14px; |
||||||
|
} |
||||||
|
|
||||||
|
.container { |
||||||
|
margin: 0 auto; |
||||||
|
max-width: 1200px; |
||||||
|
min-width: 960px; |
||||||
|
padding: 0 40px; |
||||||
|
width: 90%; |
||||||
|
} |
||||||
|
|
||||||
|
.glyph { |
||||||
|
border-bottom: 1px dotted #ccc; |
||||||
|
padding: 10px 0 20px; |
||||||
|
margin-bottom: 20px; |
||||||
|
} |
||||||
|
|
||||||
|
.preview-glyphs { vertical-align: bottom; } |
||||||
|
|
||||||
|
.preview-scale { |
||||||
|
color: #888; |
||||||
|
font-size: 12px; |
||||||
|
margin-top: 5px; |
||||||
|
} |
||||||
|
|
||||||
|
.step { |
||||||
|
display: inline-block; |
||||||
|
line-height: 1; |
||||||
|
position: relative; |
||||||
|
width: 10%; |
||||||
|
} |
||||||
|
|
||||||
|
.step .letters, |
||||||
|
.step i { |
||||||
|
-webkit-transition: opacity .3s; |
||||||
|
-moz-transition: opacity .3s; |
||||||
|
-ms-transition: opacity .3s; |
||||||
|
-o-transition: opacity .3s; |
||||||
|
transition: opacity .3s; |
||||||
|
} |
||||||
|
|
||||||
|
.step:hover .letters { opacity: 1; } |
||||||
|
.step:hover i { opacity: .3; } |
||||||
|
|
||||||
|
.letters { |
||||||
|
opacity: .3; |
||||||
|
position: absolute; |
||||||
|
} |
||||||
|
|
||||||
|
.characters-off .letters { display: none; } |
||||||
|
.characters-off .step:hover i { opacity: 1; } |
||||||
|
|
||||||
|
|
||||||
|
.size-12 { font-size: 12px; } |
||||||
|
|
||||||
|
.size-14 { font-size: 14px; } |
||||||
|
|
||||||
|
.size-16 { font-size: 16px; } |
||||||
|
|
||||||
|
.size-18 { font-size: 18px; } |
||||||
|
|
||||||
|
.size-21 { font-size: 21px; } |
||||||
|
|
||||||
|
.size-24 { font-size: 24px; } |
||||||
|
|
||||||
|
.size-36 { font-size: 36px; } |
||||||
|
|
||||||
|
.size-48 { font-size: 48px; } |
||||||
|
|
||||||
|
.size-60 { font-size: 60px; } |
||||||
|
|
||||||
|
.size-72 { font-size: 72px; } |
||||||
|
|
||||||
|
|
||||||
|
.usage { margin-top: 10px; } |
||||||
|
|
||||||
|
.usage input { |
||||||
|
font-family: monospace; |
||||||
|
margin-right: 3px; |
||||||
|
padding: 2px 5px; |
||||||
|
text-align: center; |
||||||
|
} |
||||||
|
|
||||||
|
.usage .point { width: 150px; } |
||||||
|
|
||||||
|
.usage .class { width: 250px; } |
||||||
|
|
||||||
|
footer { |
||||||
|
color: #888; |
||||||
|
font-size: 12px; |
||||||
|
padding: 20px 0; |
||||||
|
} |
||||||
|
|
||||||
|
/* Icon Font: fa-dtbl-1 */ |
||||||
|
|
||||||
|
@font-face { |
||||||
|
font-family: "fa-dtbl-1"; |
||||||
|
src: url("./fa-dtbl-1.eot"); |
||||||
|
src: url("./fa-dtbl-1.eot?#iefix") format("embedded-opentype"), |
||||||
|
url("./fa-dtbl-1.woff2") format("woff2"), |
||||||
|
url("./fa-dtbl-1.woff") format("woff"), |
||||||
|
url("./fa-dtbl-1.ttf") format("truetype"), |
||||||
|
url("./fa-dtbl-1.svg#fa-dtbl-1") format("svg"); |
||||||
|
font-weight: normal; |
||||||
|
font-style: normal; |
||||||
|
} |
||||||
|
|
||||||
|
@media screen and (-webkit-min-device-pixel-ratio:0) { |
||||||
|
@font-face { |
||||||
|
font-family: "fa-dtbl-1"; |
||||||
|
src: url("./fa-dtbl-1.svg#fa-dtbl-1") format("svg"); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
[data-icon]:before { content: attr(data-icon); } |
||||||
|
|
||||||
|
[data-icon]:before, |
||||||
|
.fa-check:before, |
||||||
|
.fa-facebook-square:before, |
||||||
|
.fa-floppy-o:before, |
||||||
|
.fa-github:before, |
||||||
|
.fa-google:before, |
||||||
|
.fa-question-circle:before, |
||||||
|
.fa-sign-in:before, |
||||||
|
.fa-sign-out:before, |
||||||
|
.fa-times:before, |
||||||
|
.fa-trash-o:before, |
||||||
|
.fa-user-circle-o:before, |
||||||
|
.fa-user-plus:before { |
||||||
|
display: inline-block; |
||||||
|
font-family: "fa-dtbl-1"; |
||||||
|
font-style: normal; |
||||||
|
font-weight: normal; |
||||||
|
font-variant: normal; |
||||||
|
line-height: 1; |
||||||
|
text-decoration: inherit; |
||||||
|
text-rendering: optimizeLegibility; |
||||||
|
text-transform: none; |
||||||
|
-moz-osx-font-smoothing: grayscale; |
||||||
|
-webkit-font-smoothing: antialiased; |
||||||
|
font-smoothing: antialiased; |
||||||
|
} |
||||||
|
|
||||||
|
.fa-check:before { content: "\f100"; } |
||||||
|
.fa-facebook-square:before { content: "\f101"; } |
||||||
|
.fa-floppy-o:before { content: "\f102"; } |
||||||
|
.fa-github:before { content: "\f103"; } |
||||||
|
.fa-google:before { content: "\f104"; } |
||||||
|
.fa-question-circle:before { content: "\f105"; } |
||||||
|
.fa-sign-in:before { content: "\f106"; } |
||||||
|
.fa-sign-out:before { content: "\f107"; } |
||||||
|
.fa-times:before { content: "\f108"; } |
||||||
|
.fa-trash-o:before { content: "\f109"; } |
||||||
|
.fa-user-circle-o:before { content: "\f10a"; } |
||||||
|
.fa-user-plus:before { content: "\f10b"; } |
||||||
|
</style> |
||||||
|
|
||||||
|
<!--[if lte IE 8]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]--> |
||||||
|
|
||||||
|
<script> |
||||||
|
function toggleCharacters() { |
||||||
|
var body = document.getElementsByTagName('body')[0]; |
||||||
|
body.className = body.className === 'characters-off' ? '' : 'characters-off'; |
||||||
|
} |
||||||
|
</script> |
||||||
|
</head> |
||||||
|
|
||||||
|
<body class="characters-off"> |
||||||
|
<div id="page" class="container"> |
||||||
|
<header> |
||||||
|
<h1>fa-dtbl-1 contains 12 glyphs:</h1> |
||||||
|
<a onclick="toggleCharacters(); return false;" href="#">Toggle Preview Characters</a> |
||||||
|
</header> |
||||||
|
|
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-check" class="fa-check"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-check" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf100;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-facebook-square" class="fa-facebook-square"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-facebook-square" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf101;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-floppy-o" class="fa-floppy-o"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-floppy-o" /> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-save" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf102;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-github" class="fa-github"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-github" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf103;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-google" class="fa-google"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-google" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf104;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-question-circle" class="fa-question-circle"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-question-circle" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf105;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-sign-in" class="fa-sign-in"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-sign-in" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf106;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-sign-out" class="fa-sign-out"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-sign-out" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf107;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-times" class="fa-times"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-times" /> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-close" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf108;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-trash-o" class="fa-trash-o"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-trash-o" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf109;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-user-circle-o" class="fa-user-circle-o"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-user-circle-o" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf10a;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="glyph"> |
||||||
|
<div class="preview-glyphs"> |
||||||
|
<span class="step size-12"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-14"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-16"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-18"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-21"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-24"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-36"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-48"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-60"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span><span class="step size-72"><span class="letters">Pp</span><i id="fa-user-plus" class="fa-user-plus"></i></span> |
||||||
|
</div> |
||||||
|
<div class="preview-scale"> |
||||||
|
<span class="step">12</span><span class="step">14</span><span class="step">16</span><span class="step">18</span><span class="step">21</span><span class="step">24</span><span class="step">36</span><span class="step">48</span><span class="step">60</span><span class="step">72</span> |
||||||
|
</div> |
||||||
|
<div class="usage"> |
||||||
|
<input class="class" type="text" readonly="readonly" onClick="this.select();" value=".fa-user-plus" /> |
||||||
|
<input class="point" type="text" readonly="readonly" onClick="this.select();" value="&#xf10b;" /> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<footer> |
||||||
|
Made with love using <a href="http://fontcustom.com">Font Custom</a>. |
||||||
|
</footer> |
||||||
|
</div> |
||||||
|
</body> |
||||||
|
</html> |
Binary file not shown.
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 7.5 KiB |
Binary file not shown.
Binary file not shown.
@ -0,0 +1,11 @@ |
|||||||
|
<div class="col-md-1 pl-0"> |
||||||
|
@if($w->help) |
||||||
|
<i class="fa-question-circle" |
||||||
|
data-toggle="tooltip" |
||||||
|
data-placement="right" |
||||||
|
@if(false!==strpos($w->help, '<')) |
||||||
|
data-html="true" |
||||||
|
@endif |
||||||
|
title="{{ $w->help }}"></i> |
||||||
|
@endif |
||||||
|
</div> |
@ -0,0 +1,21 @@ |
|||||||
|
@php |
||||||
|
/** @var \App\View\Widget $w */ |
||||||
|
@endphp |
||||||
|
|
||||||
|
<div class="row form-group"> |
||||||
|
<label for="field-{{ $w->name }}" class="col-md-3 col-form-label text-md-right">{{ $w->label }}</label> |
||||||
|
<div class="col-md-8 pl-0"> |
||||||
|
<input id="field-{{ $w->name }}" |
||||||
|
name="{{ $w->name }}" |
||||||
|
class="form-control{{ $errors->has($w->name) ? ' is-invalid' : '' }}" |
||||||
|
value="{{ $w->value }}" |
||||||
|
{!! $w->attributes !!}> |
||||||
|
|
||||||
|
@if ($errors->has($w->name)) |
||||||
|
<span class="invalid-feedback" role="alert"> |
||||||
|
<strong>{{ $errors->first($w->name) }}</strong> |
||||||
|
</span> |
||||||
|
@endif |
||||||
|
</div> |
||||||
|
@include('form._help') |
||||||
|
</div> |
@ -0,0 +1,20 @@ |
|||||||
|
@php |
||||||
|
/** @var \App\View\Widget $w */ |
||||||
|
@endphp |
||||||
|
|
||||||
|
<div class="row form-group"> |
||||||
|
<label for="field-{{ $w->name }}" class="col-md-3 col-form-label text-md-right">{{ $w->label }}</label> |
||||||
|
<div class="col-md-8 pl-0"> |
||||||
|
<textarea id="field-{{ $w->name }}" |
||||||
|
name="{{ $w->name }}" |
||||||
|
class="form-control{{ $errors->has($w->name) ? ' is-invalid' : '' }}" |
||||||
|
{!! $w->attributes !!}>{{$w->value}}</textarea> |
||||||
|
|
||||||
|
@if ($errors->has($w->name)) |
||||||
|
<span class="invalid-feedback" role="alert"> |
||||||
|
<strong>{{ $errors->first($w->name) }}</strong> |
||||||
|
</span> |
||||||
|
@endif |
||||||
|
</div> |
||||||
|
@include('form._help') |
||||||
|
</div> |
@ -0,0 +1,19 @@ |
|||||||
|
<?php |
||||||
|
// Routes using the web middleware |
||||||
|
|
||||||
|
require "login.php"; |
||||||
|
|
||||||
|
Route::get('/about/terms', function () { |
||||||
|
return view('about.terms'); |
||||||
|
}); |
||||||
|
|
||||||
|
Route::get('/about/privacy', function () { |
||||||
|
return view('about.privacy'); |
||||||
|
}); |
||||||
|
|
||||||
|
Route::get('/', function () { |
||||||
|
if (!Auth::guest()) { |
||||||
|
return redirect('/home'); |
||||||
|
} |
||||||
|
return view('welcome'); |
||||||
|
}); |
@ -0,0 +1,13 @@ |
|||||||
|
<?php |
||||||
|
// Routes using the web+auth middlewares |
||||||
|
|
||||||
|
Route::get('/home', 'HomeController@index')->name('home'); |
||||||
|
|
||||||
|
// Table resource |
||||||
|
Route::group([ |
||||||
|
'prefix' => 'table', |
||||||
|
], function () { |
||||||
|
Route::get('create', 'TableController@create')->name('table.create'); |
||||||
|
Route::post('create', 'TableController@storeNew')->name('table.storeNew'); |
||||||
|
}); |
||||||
|
|
@ -1,34 +0,0 @@ |
|||||||
<?php |
|
||||||
|
|
||||||
/* |
|
||||||
|-------------------------------------------------------------------------- |
|
||||||
| Web Routes |
|
||||||
|-------------------------------------------------------------------------- |
|
||||||
| |
|
||||||
| Here is where you can register web routes for your application. These |
|
||||||
| routes are loaded by the RouteServiceProvider within a group which |
|
||||||
| contains the "web" middleware group. Now create something great! |
|
||||||
| |
|
||||||
*/ |
|
||||||
|
|
||||||
require "login.php"; |
|
||||||
|
|
||||||
Route::get('/about/terms', function () { |
|
||||||
return view('about.terms'); |
|
||||||
}); |
|
||||||
|
|
||||||
Route::get('/about/privacy', function () { |
|
||||||
return view('about.privacy'); |
|
||||||
}); |
|
||||||
|
|
||||||
|
|
||||||
Route::get('/', function () { |
|
||||||
if (!Auth::guest()) { |
|
||||||
return redirect('/home'); |
|
||||||
} |
|
||||||
return view('welcome'); |
|
||||||
}); |
|
||||||
|
|
||||||
Route::get('/home', 'HomeController@index')->name('home'); |
|
||||||
|
|
||||||
Route::get('/table/create', 'TableController@create')->name('table.create'); |
|
Loading…
Reference in new issue