mirror of
https://gitlab.linphone.org/BC/public/flexisip-account-manager.git
synced 2026-04-17 11:48:28 +00:00
Fix FLEXIAPI-447 (and related issues)
This commit is contained in:
parent
7dd9cdfb42
commit
40dc384fb4
7 changed files with 144 additions and 32 deletions
|
|
@ -14,6 +14,9 @@
|
|||
"Activated": "Activé",
|
||||
"Activity expiration delay": "Délais d'expiration après activité",
|
||||
"Activity": "Activité",
|
||||
"Activate call forwarding for all calls?": "Activer la redirection d'appel pour tous les appels?",
|
||||
"Activate conditional call forwarding?": "Activer la redirection d'appel conditionelle?",
|
||||
"Activating conditional call forwarding will automatically disable the Forward All Calls rule.": "L'activation de la redirection d'appel conditionnelle va désactiver la redirection d'appel pour tous les appels.",
|
||||
"Add contact": "Ajout d'un contact",
|
||||
"Add contacts": "Ajouter des contacts",
|
||||
"Add existing contacts lists to display them in the user applications.": "Ajouter des listes de contacts existantes afin qu’elles soient visibles dans les applications de l’utilisateur.",
|
||||
|
|
@ -37,6 +40,7 @@
|
|||
"Best regards,":"Cordialement,",
|
||||
"Blocked": "Bloqué",
|
||||
"Broadcast": "Broadcast",
|
||||
"Busy line": "Ligne occupée",
|
||||
"By email": "Inscription par email",
|
||||
"By phone": "Par téléphone",
|
||||
"By": "Par",
|
||||
|
|
@ -107,6 +111,7 @@
|
|||
"Export": "Exporter",
|
||||
"External Account": "Compte Externe",
|
||||
"Features": "Fonctionnalités",
|
||||
"Forwarding all calls takes priority over the other rules. If you activate this option all the other rules will be disabled.": "Rediriger tous les appels est prioritaire sur les autres rêgles. En activant cette option toutes les autres seront désactivées.",
|
||||
"Fill the related columns if you want to add an external account as well": "Remplissez également les colonnes suivantes si vous souhaitez ajouter un compte externe",
|
||||
"Fill to change": "Remplir pour changer",
|
||||
"Files": "Fichiers",
|
||||
|
|
@ -119,6 +124,8 @@
|
|||
"I'm not a robot": "Je ne suis pas un robot",
|
||||
"Identifier": "Identifiant",
|
||||
"If you have any questions or need assistance, feel free to contact our support team.":"Si vous avez des questions ou besoin d’assistance, notre équipe reste à votre disposition",
|
||||
"If no one is answering": "Si personne ne répond",
|
||||
"If the line is busy": "Si la ligne est occupée",
|
||||
"Import": "Importer",
|
||||
"In :days days": "Dans :days jours",
|
||||
"In ini format, will complete the other settings.": "Au format ini, complètera les autres paramètres.",
|
||||
|
|
@ -164,16 +171,17 @@
|
|||
"No answer": "Pas de réponse",
|
||||
"No phone yet": "Pas de téléphone pour le moment",
|
||||
"Number of minutes to expire the key after the last request.": "Nombre de minutes avant l'expiration de la clef après son dernier usage.",
|
||||
"Or": "Ou",
|
||||
"Open the app": "Ouvrir l'application",
|
||||
"Other information": "Autres informations",
|
||||
"Outbound proxy": "Outbound proxy",
|
||||
"Line occupied": "Ligne occupée",
|
||||
"Password": "Mot de passe",
|
||||
"Phone Countries": "Numéros Internationaux",
|
||||
"Phone number": "Numéro de téléphone",
|
||||
"Phone registration": "Inscription par téléphone",
|
||||
"Please enter the new email that you would like to link to your account.": "Veuillez entre l'adresse email que vous souhaitez lier à votre compte.",
|
||||
"Please enter the new phone number that you would like to link to your account.": "Veuillez entrer le numéro de téléphone que vous souhaitez lier à votre compte.",
|
||||
"Priority rule": "Rêgle prioritaire",
|
||||
"Protocol": "Protocole",
|
||||
"Provisioning of your device": "Déploiement sur votre appareil",
|
||||
"Provisioning tokens": "Jetons de déploiement",
|
||||
|
|
|
|||
7
flexiapi/public/css/form.css
vendored
7
flexiapi/public/css/form.css
vendored
|
|
@ -107,7 +107,7 @@ form div {
|
|||
position: relative;
|
||||
}
|
||||
|
||||
form div .btn,
|
||||
form.inline div .btn,
|
||||
form div a.chip {
|
||||
margin-top: 2.5rem;
|
||||
}
|
||||
|
|
@ -412,4 +412,9 @@ div.select[data-value=voicemail] ~ div.togglable.voicemail,
|
|||
div.select[data-value=contact] ~ div.togglable.contact,
|
||||
div.select[data-value=sip_uri] ~ div.togglable.sip_uri {
|
||||
display: block;
|
||||
}
|
||||
|
||||
form section.block div.checkbox:has(input:not(:checked)) ~ div {
|
||||
opacity: 0.25;
|
||||
pointer-events: none;
|
||||
}
|
||||
81
flexiapi/public/css/style.css
vendored
81
flexiapi/public/css/style.css
vendored
|
|
@ -104,7 +104,8 @@ pre {
|
|||
color: var(--second-7);
|
||||
}
|
||||
|
||||
b, strong {
|
||||
b,
|
||||
strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
|
@ -147,11 +148,11 @@ p {
|
|||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
p > b {
|
||||
p>b {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
p > i {
|
||||
p>i {
|
||||
vertical-align: middle;
|
||||
margin-right: 1rem;
|
||||
}
|
||||
|
|
@ -382,6 +383,12 @@ form section {
|
|||
grid-column: 1 / 3;
|
||||
}
|
||||
|
||||
form section.block {
|
||||
border-radius: 1rem;
|
||||
padding: 1rem;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
.grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, 1fr);
|
||||
|
|
@ -587,7 +594,7 @@ h3 {
|
|||
border-bottom: 1px solid var(--grey-2);
|
||||
}
|
||||
|
||||
h3 > i {
|
||||
h3>i {
|
||||
line-height: 2rem;
|
||||
margin-right: 1rem;
|
||||
vertical-align: middle;
|
||||
|
|
@ -643,7 +650,7 @@ h3 .badge {
|
|||
margin-left: 1rem;
|
||||
}
|
||||
|
||||
h3 .badge + .badge {
|
||||
h3 .badge+.badge {
|
||||
margin-left: 0;
|
||||
}
|
||||
|
||||
|
|
@ -674,7 +681,7 @@ table {
|
|||
width: 100%;
|
||||
}
|
||||
|
||||
h3 + table {
|
||||
h3+table {
|
||||
margin-top: -0.5rem;
|
||||
}
|
||||
|
||||
|
|
@ -1012,7 +1019,7 @@ ol.steps li.active:before {
|
|||
|
||||
/** Show/hide toggle **/
|
||||
|
||||
details > summary::before {
|
||||
details>summary::before {
|
||||
content: "▶";
|
||||
color: var(--grey-4);
|
||||
font-size: 1.5rem;
|
||||
|
|
@ -1021,11 +1028,11 @@ details > summary::before {
|
|||
float: right;
|
||||
}
|
||||
|
||||
details[open] > summary::before {
|
||||
details[open]>summary::before {
|
||||
content: "▼";
|
||||
}
|
||||
|
||||
details > summary:hover {
|
||||
details>summary:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
|
@ -1059,4 +1066,60 @@ ul.errors li {
|
|||
list-style-type: none;
|
||||
margin: 0;
|
||||
color: white;
|
||||
}
|
||||
|
||||
span.line {
|
||||
display: block;
|
||||
text-align: center;
|
||||
color: var(--grey-5);
|
||||
margin-bottom: -0.5rem;
|
||||
font-size: 1.5rem;
|
||||
line-height: 2rem;
|
||||
font-weight: bold;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
span.line::before {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 1rem;
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: 1px;
|
||||
background-image: linear-gradient(to right, var(--grey-3), transparent, var(--grey-3));
|
||||
}
|
||||
|
||||
i.tooltip {
|
||||
vertical-align: middle;
|
||||
font-size: 2rem;
|
||||
line-height: 3rem;
|
||||
}
|
||||
|
||||
i.tooltip:hover {
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
/* Dialogs */
|
||||
|
||||
dialog {
|
||||
width: 80%;
|
||||
max-width: 500px;
|
||||
position: absolute;
|
||||
top: calc(50% - 20rem);
|
||||
margin: 0 auto;
|
||||
padding: 2rem 3rem;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
dialog h2 {
|
||||
border-bottom: 1px solid var(--grey-3);
|
||||
}
|
||||
|
||||
dialog p {
|
||||
margin: 2rem 0;
|
||||
}
|
||||
|
||||
dialog::backdrop {
|
||||
background-color: black;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
|
@ -2,54 +2,91 @@
|
|||
{{ __('Call Forwarding') }}
|
||||
</h3>
|
||||
|
||||
<dialog id="always_dialog" closedby="any">
|
||||
<h2>{{ __('Activate call forwarding for all calls?') }}</h2>
|
||||
<p>{{ __('Forwarding all calls takes priority over the other rules. If you activate this option all the other rules will be disabled.') }}</p>
|
||||
|
||||
<button class="btn small oppose" commandfor="always_dialog" onclick="
|
||||
setCheckboxValue('always[enabled]', true);
|
||||
setCheckboxValue('away[enabled]', false);
|
||||
setCheckboxValue('busy[enabled]', false);
|
||||
document.querySelector('#always_dialog').close()">{{ __('Activate') }}</button>
|
||||
<button class="btn small oppose secondary" commandfor="always_dialog" command="close" onclick="document.querySelector('#always_dialog').close()">{{ __('Cancel') }}</button>
|
||||
</dialog>
|
||||
|
||||
<dialog id="away_dialog" closedby="any">
|
||||
<h2>{{ __('Activate conditional call forwarding?') }}</h2>
|
||||
<p>{{ __('Activating conditional call forwarding will automatically disable the Forward All Calls rule.') }}</p>
|
||||
|
||||
<button class="btn small oppose" commandfor="away_dialog" onclick="
|
||||
setCheckboxValue('always[enabled]', false);
|
||||
setCheckboxValue('away[enabled]', true);
|
||||
document.querySelector('#away_dialog').close()">{{ __('Activate') }}</button>
|
||||
<button class="btn small oppose secondary" commandfor="away_dialog" command="close" onclick="document.querySelector('#away_dialog').close()">{{ __('Cancel') }}</button>
|
||||
</dialog>
|
||||
|
||||
<dialog id="busy_dialog" closedby="any">
|
||||
<h2>{{ __('Activate conditional call forwarding?') }}</h2>
|
||||
<p>{{ __('Activating conditional call forwarding will automatically disable the Forward All Calls rule.') }}</p>
|
||||
|
||||
<button class="btn small oppose" commandfor="busy_dialog" onclick="
|
||||
setCheckboxValue('always[enabled]', false);
|
||||
setCheckboxValue('busy[enabled]', true);
|
||||
document.querySelector('#busy_dialog').close()">{{ __('Activate') }}</button>
|
||||
<button class="btn small oppose secondary" commandfor="busy_dialog" command="close" onclick="document.querySelector('#busy_dialog').close()">{{ __('Cancel') }}</button>
|
||||
</dialog>
|
||||
|
||||
<form id="edit" method="POST" action="@if ($account->admin) {{ route('admin.account.call_forwardings.update', $account->id) }}@else{{ route('account.call_forwardings.update') }}@endif" accept-charset="UTF-8">
|
||||
@csrf
|
||||
@method('put')
|
||||
@php($callForwardings = $account->callForwardingsDefault)
|
||||
|
||||
<section>
|
||||
<h4>{{ __('All the calls') }}</h4>
|
||||
<section class="block">
|
||||
<div>
|
||||
<i class="ph ph-info oppose tooltip" title="{{ __('All incoming calls are forwarded, whether you answer, decline the call or are already on a call.') }}"></i>
|
||||
<h4>{{ __('All the calls') }}</h4>
|
||||
</div>
|
||||
|
||||
<div class="checkbox">
|
||||
<span class="badge">{{ __('Priority rule') }}</span>
|
||||
<input id="always[enabled]" type="checkbox" @if ($callForwardings['always']->enabled) checked @endif name="always[enabled]"
|
||||
onchange="if (this.checked) { setCheckboxValue('away[enabled]', false); setCheckboxValue('busy[enabled]', false); }">
|
||||
onchange="if (this.checked) { setCheckboxValue('always[enabled]', false); document.querySelector('#always_dialog').showModal(); }">
|
||||
<label for="always[enabled]"></label>
|
||||
</div>
|
||||
|
||||
@include('account.call_forwardings.edit_select_part', ['callForwarding' => $callForwardings, 'type' => 'always'])
|
||||
@if (!$account->admin)
|
||||
<small class="large">{{ __('All incoming calls are forwarded, whether you answer, decline the call or are already on a call.') }}</small>
|
||||
@endif
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h4>{{ __('No answer') }}</h4>
|
||||
<span class="line large">{{ __('Or') }}</span>
|
||||
|
||||
<section class="block">
|
||||
<div>
|
||||
<i class="ph ph-info oppose tooltip" title="{{ __('Calls are only forwarded when your line is busy with another call.') }}"></i>
|
||||
<h4>@if ($account->admin){{ __('No answer') }}@else{{ __('If no one is answering') }}@endif</h4>
|
||||
</div>
|
||||
|
||||
<div class="checkbox">
|
||||
<input id="away[enabled]" type="checkbox" @if ($callForwardings['away']->enabled) checked @endif name="away[enabled]"
|
||||
onchange="if (this.checked) { setCheckboxValue('always[enabled]', false); }">
|
||||
onchange="if (this.checked) { setCheckboxValue('away[enabled]', false); document.querySelector('#away_dialog').showModal(); }">
|
||||
<label for="away[enabled]"></label>
|
||||
</div>
|
||||
|
||||
@include('account.call_forwardings.edit_select_part', ['callForwarding' => $callForwardings, 'type' => 'away'])
|
||||
@if (!$account->admin)
|
||||
<small class="large">{{ __('Calls are only forwarded when your line is busy with another call.') }}</small>
|
||||
@endif
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<h4>{{ __('Line occupied') }}</h4>
|
||||
<section class="block">
|
||||
<div>
|
||||
<i class="ph ph-info oppose tooltip" title="{{ __('Calls are only forwarded if you do not answer or if you decline the call.') }}"></i>
|
||||
<h4>@if ($account->admin){{ __('Busy line') }}@else{{ __('If the line is busy') }}@endif</h4>
|
||||
</div>
|
||||
|
||||
<div class="checkbox">
|
||||
<input id="busy[enabled]" type="checkbox" @if ($callForwardings['busy']->enabled) checked @endif name="busy[enabled]"
|
||||
onchange="if (this.checked) { setCheckboxValue('always[enabled]', false); }">
|
||||
onchange="if (this.checked) { setCheckboxValue('busy[enabled]', false); document.querySelector('#busy_dialog').showModal(); }">
|
||||
<label for="busy[enabled]"></label>
|
||||
</div>
|
||||
|
||||
@include('account.call_forwardings.edit_select_part', ['callForwarding' => $callForwardings, 'type' => 'busy'])
|
||||
@if (!$account->admin)
|
||||
<small class="large">{{ __('Calls are only forwarded if you do not answer or if you decline the call.') }}</small>
|
||||
@endif
|
||||
</section>
|
||||
|
||||
<div class="large">
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
<label for="password">{{ __('Password') }}</label>
|
||||
</div>
|
||||
<div>
|
||||
<input class="btn" type="submit" value="{{ __('Login') }}">
|
||||
<input class="btn" style="margin-top: 2.5rem;" type="submit" value="{{ __('Login') }}">
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
@include('admin.account.parts.tabs')
|
||||
|
||||
<div class="grid">
|
||||
<div class="card">
|
||||
<div class="card large">
|
||||
@include('account.call_forwardings.edit', ['account' => $account])
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -21,7 +21,6 @@
|
|||
|
||||
@php
|
||||
$items = [];
|
||||
$items['account.dashboard'] = ['title' => __('My Account'), 'icon' => 'gauge'];
|
||||
$items['account.telephony'] = ['title' => __('Telephony'), 'icon' => 'phone'];
|
||||
@endphp
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue