mirror of
https://gitlab.linphone.org/BC/public/flexisip-account-manager.git
synced 2026-01-17 10:08:05 +00:00
Add Linphone basic theme
Remove email restriction
This commit is contained in:
parent
e889c5f9ef
commit
ef88463e3d
11 changed files with 321 additions and 11 deletions
|
|
@ -34,6 +34,10 @@ Allow the webserver user to write in the `storage/` directory:
|
|||
|
||||
chcon -R -t httpd_sys_rw_content_t storage/
|
||||
|
||||
If you have your SQLite DB setup in another directory don't forget to allow write rights as well
|
||||
|
||||
chcon -R -t httpd_sys_rw_content_t db.sqlite
|
||||
|
||||
If your external database is locate on a remote machine, you should also allow your webserver user to connect to remote hosts:
|
||||
|
||||
semanage port -a -t http_port_t -p tcp 3306 // Open remote connections on the MySQL port for example
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ class AccountEmailController extends Controller
|
|||
public function update(Request $request)
|
||||
{
|
||||
$request->validate([
|
||||
'email' => 'required|confirmed|email|unique:external.accounts,email',
|
||||
'email' => 'required|confirmed|email',
|
||||
]);
|
||||
|
||||
$account = $request->user();
|
||||
|
|
|
|||
92
flexiapi/public/css/style.css
vendored
Normal file
92
flexiapi/public/css/style.css
vendored
Normal file
|
|
@ -0,0 +1,92 @@
|
|||
@font-face {
|
||||
font-family: "Montserrat";
|
||||
src: local("Montserrat Regular"), local("Montserrat-Regular"), url("https://fonts.gstatic.com/s/montserrat/v14/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2") format("woff2");
|
||||
font-style: normal;
|
||||
font-weight: 400;
|
||||
unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: "Montserrat";
|
||||
src: local("Montserrat Bold"), local("Montserrat-Bold"), url("https://fonts.gstatic.com/s/montserrat/v14/JTURjIg1_i6t8kCHKm45_dJE3gnD_g.woff2") format("woff2");
|
||||
font-style: normal;
|
||||
font-weight: 700;
|
||||
unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
|
||||
}
|
||||
|
||||
body {
|
||||
min-height: 100vh;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
font-family: "Montserrat";
|
||||
}
|
||||
|
||||
body > div {
|
||||
flex: 1 0 auto;
|
||||
}
|
||||
|
||||
body > header::after,
|
||||
body > footer::before {
|
||||
background-image: url('/img/header.svg');
|
||||
background-color: white;
|
||||
background-position: bottom center;
|
||||
background-repeat: repeat-x;
|
||||
display: block;
|
||||
height: 20rem;
|
||||
width: 100%;
|
||||
content: '';
|
||||
}
|
||||
|
||||
@media screen and (max-width: 991px) {
|
||||
nav.navbar,
|
||||
body > header::after {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
h1, h2, h3, a, label {
|
||||
color: #ff733b;
|
||||
}
|
||||
|
||||
nav a {
|
||||
color: white;
|
||||
opacity: 0.8;
|
||||
}
|
||||
|
||||
nav a:hover,
|
||||
nav li.active a {
|
||||
color: white;
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
input.form-control {
|
||||
border-color: #9ec6dc;
|
||||
}
|
||||
|
||||
.btn {
|
||||
border: 1px solid #ff733b;
|
||||
background-color: transparent;
|
||||
color: #ff733b;
|
||||
border-radius: 10rem;
|
||||
}
|
||||
|
||||
body > footer,
|
||||
body > header nav {
|
||||
background-color: #ff733b;
|
||||
}
|
||||
|
||||
body > footer {
|
||||
color: white;
|
||||
padding-bottom: 1rem;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
body > header::after {
|
||||
margin-top: -5rem;
|
||||
margin-bottom: -6rem;
|
||||
}
|
||||
|
||||
body > footer::before {
|
||||
background-image: url('/img/footer.svg');
|
||||
height: 15rem;
|
||||
}
|
||||
BIN
flexiapi/public/img/footer.png
Normal file
BIN
flexiapi/public/img/footer.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 169 KiB |
101
flexiapi/public/img/footer.svg
Normal file
101
flexiapi/public/img/footer.svg
Normal file
|
|
@ -0,0 +1,101 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
sodipodi:docname="footer.svg"
|
||||
inkscape:version="1.0rc1 (09960d6f05, 2020-04-09)"
|
||||
id="svg8"
|
||||
version="1.1"
|
||||
viewBox="0 0 481.34168 54.455357"
|
||||
height="54.455357mm"
|
||||
width="481.34167mm">
|
||||
<defs
|
||||
id="defs2" />
|
||||
<sodipodi:namedview
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-height="1027"
|
||||
inkscape:window-width="1920"
|
||||
fit-margin-bottom="-0.1"
|
||||
fit-margin-right="-0.1"
|
||||
fit-margin-left="-0.1"
|
||||
fit-margin-top="-0.1"
|
||||
inkscape:guide-bbox="true"
|
||||
showguides="true"
|
||||
showgrid="false"
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:current-layer="g26"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:cy="93.503742"
|
||||
inkscape:cx="1706.5646"
|
||||
inkscape:zoom="1.98"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
borderopacity="1.0"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#ffffff"
|
||||
id="base">
|
||||
<sodipodi:guide
|
||||
id="guide42"
|
||||
orientation="1,0"
|
||||
position="-0.099990996,54.404172" />
|
||||
<sodipodi:guide
|
||||
id="guide44"
|
||||
orientation="1,0"
|
||||
position="481.44165,-0.099997858" />
|
||||
<sodipodi:guide
|
||||
id="guide887"
|
||||
orientation="0,-1"
|
||||
position="-0.099989072,34.783784" />
|
||||
<sodipodi:guide
|
||||
id="guide889"
|
||||
orientation="0,-1"
|
||||
position="-0.099989072,2.9868086" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata5">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
transform="translate(327.79435,-68.891666)"
|
||||
id="layer1"
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="Calque 1">
|
||||
<g
|
||||
transform="translate(9.2773437e-7,54.308819)"
|
||||
id="g26">
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path36"
|
||||
d="m -327.89434,14.634035 121.11229,27.528297 62.6859,-9.362178 26.45833,-18.317307 55.766026,24.423076 92.807691,-24.016025 81.124273,17.952698 41.58713,-17.923294 1e-5,54.218899 h -481.54165 z"
|
||||
style="fill:#ffb9a0;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path38"
|
||||
d="m -327.89434,34.25442 109.3078,-14.886957 34.19231,10.875621 30.52885,-1.10639 33.3782,11.397435 53.560418,-14.363353 62.3326405,19.188794 40.0075805,-14.594673 66.241771,22.215676 39.77373,-25.273923 12.21834,6.54777 1e-5,34.883781 -481.54166,1e-6 z"
|
||||
style="fill:#ff9e79;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path40"
|
||||
d="m -327.89434,69.138201 v -3.086806 l 58.83344,-21.446755 69.19693,6.163152 31.34474,-3.720844 25.64423,9.362181 79.375,7.733974 58.9058785,-18.783533 50.7612655,3.720841 37.576541,-14.825991 43.835825,14.201899 26.06779,17.595076 1e-5,3.086803 z"
|
||||
style="fill:#ff723b;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.8 KiB |
BIN
flexiapi/public/img/header.png
Normal file
BIN
flexiapi/public/img/header.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 29 KiB |
99
flexiapi/public/img/header.svg
Normal file
99
flexiapi/public/img/header.svg
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
sodipodi:docname="header.svg"
|
||||
inkscape:version="1.0rc1 (09960d6f05, 2020-04-09)"
|
||||
id="svg8"
|
||||
version="1.1"
|
||||
viewBox="0 0 412.75 132.29167"
|
||||
height="132.29167mm"
|
||||
width="412.75mm">
|
||||
<defs
|
||||
id="defs2" />
|
||||
<sodipodi:namedview
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-height="1027"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:guide-bbox="true"
|
||||
showguides="true"
|
||||
fit-margin-bottom="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-top="0"
|
||||
showgrid="false"
|
||||
inkscape:document-rotation="0"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:document-units="mm"
|
||||
inkscape:cy="347.48298"
|
||||
inkscape:cx="890.08599"
|
||||
inkscape:zoom="0.61"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="1"
|
||||
borderopacity="1.0"
|
||||
bordercolor="#666666"
|
||||
pagecolor="#9cb9d0"
|
||||
id="base">
|
||||
<sodipodi:guide
|
||||
id="guide847"
|
||||
orientation="1,0"
|
||||
position="-9.2773435e-07,1.7529296e-06" />
|
||||
<sodipodi:guide
|
||||
id="guide863"
|
||||
orientation="0,-1"
|
||||
position="0,58.61539" />
|
||||
<sodipodi:guide
|
||||
id="guide865"
|
||||
orientation="0,-1"
|
||||
position="0,37.04167" />
|
||||
</sodipodi:namedview>
|
||||
<metadata
|
||||
id="metadata5">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
transform="translate(175.38095,-161.39583)"
|
||||
id="layer1"
|
||||
inkscape:groupmode="layer"
|
||||
inkscape:label="Calque 1">
|
||||
<rect
|
||||
y="161.39583"
|
||||
x="-175.38095"
|
||||
height="132.29167"
|
||||
width="412.75"
|
||||
id="rect885"
|
||||
style="fill:#9cb9d0;fill-opacity:1;stroke:none;stroke-width:0.264583" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path861"
|
||||
d="m -175.38095,246.0625 106.647434,-21.98077 81.817307,22.38782 44.368589,-21.98077 30.935898,19.53846 1.628198,49.2532 -265.397426,0.40706 z"
|
||||
style="fill:#bbcfe0;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;fill-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path857"
|
||||
d="m -175.38095,235.07211 45.99679,22.79487 55.358977,-20.35256 33.378206,13.02564 54.544872,-17.09615 46.403844,14.24679 27.679488,-11.80449 26.458333,1.62821 29.71474,-10.17628 45.99681,6.51282 47.46066,1.22115 -0.24273,58.61539 h -412.74999 z"
|
||||
style="fill:#d6e3ed;fill-opacity:1;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path859"
|
||||
d="m -175.38095,256.64583 61.46474,-11.39744 29.307694,8.95513 43.961536,-3.66346 50.0673101,15.875 68.3846149,-5.69872 23.608965,-9.36218 25.64423,3.66346 59.83655,-4.47756 50.55275,6.10577 -0.0784,37.04167 h -412.74999 z"
|
||||
style="fill:#ffffff;stroke:none;stroke-width:0.264583px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.6 KiB |
|
|
@ -44,8 +44,9 @@
|
|||
</div>
|
||||
|
||||
<div class="form-check mb-3">
|
||||
{!! Form::checkbox('terms', 'checked', false, ['class' => 'form-check-input']) !!}
|
||||
<label class="form-check-label" for="terms">I accept the <a href="{{ route('account.terms') }}">Terms and Conditions</a></label>
|
||||
<a href="{{ route('account.terms') }}">Terms and Conditions</a><br />
|
||||
{!! Form::checkbox('terms', 'checked', false, ['class' => 'form-check-input', 'id' => 'terms']) !!}
|
||||
<label class="form-check-label" for="terms">I accept the Terms and Conditions</a></label>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
|
|
@ -53,7 +54,7 @@
|
|||
{!! NoCaptcha::display() !!}
|
||||
</div>
|
||||
|
||||
{!! Form::submit('Register', ['class' => 'btn btn-primary float-right']) !!}
|
||||
{!! Form::submit('Register', ['class' => 'btn btn-primary']) !!}
|
||||
{!! Form::close() !!}
|
||||
|
||||
@endsection
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('body')
|
||||
<nav class="navbar navbar-expand navbar-light bg-light">
|
||||
@section('header')
|
||||
<nav class="navbar navbar-expand">
|
||||
<div class="collapse navbar-collapse" >
|
||||
<ul class="navbar-nav mr-auto">
|
||||
<li class="nav-item active">
|
||||
|
|
@ -17,6 +17,9 @@
|
|||
@endif
|
||||
</div>
|
||||
</nav>
|
||||
@endsection
|
||||
|
||||
@section('body')
|
||||
<div class="container-lg pt-3">
|
||||
@include('parts.errors')
|
||||
@include('parts.breadcrumb')
|
||||
|
|
|
|||
|
|
@ -6,8 +6,15 @@
|
|||
|
||||
<title>{{ config('app.name') }}</title>
|
||||
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
|
||||
<link rel="stylesheet" type="text/css" href="{{ asset('css/style.css') }}" >
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
@yield('header')
|
||||
</header>
|
||||
@yield('body')
|
||||
<footer class="text-center mt-2">
|
||||
© Copyright 2020 - Linphone - Belledonne Communications SARL
|
||||
</footer>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
@extends('layouts.base')
|
||||
|
||||
@section('body')
|
||||
<nav class="navbar navbar-expand-lg navbar-light bg-light">
|
||||
@section('header')
|
||||
<nav class="navbar navbar-expand-lg">
|
||||
<div class="collapse navbar-collapse" >
|
||||
<ul class="navbar-nav mr-auto">
|
||||
<li class="nav-item active">
|
||||
|
|
@ -12,21 +12,24 @@
|
|||
<a class="nav-link" href="{{ route('account.index') }}">My Account</a>
|
||||
</li>
|
||||
@endif
|
||||
<li class="nav-item">
|
||||
<li class="nav-item @if (request()->routeIs('api')) active @endif">
|
||||
<a class="nav-link" href="{{ route('api') }}">API</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<ul class="navbar-nav">
|
||||
<li class="nav-item">
|
||||
<li class="nav-item @if (request()->routeIs('account.register')) active @endif">
|
||||
<a class="nav-link" href="{{ route('account.register') }}">Register</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<li class="nav-item @if (request()->routeIs('account.login')) active @endif">
|
||||
<a class="nav-link" href="{{ route('account.login') }}">Authenticate</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
||||
@endsection
|
||||
|
||||
@section('body')
|
||||
<div class="container-lg pt-3">
|
||||
@include('parts.errors')
|
||||
@yield('content')
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue