This commit is contained in:
Michael Kleger 2023-02-14 16:12:09 +01:00 committed by GitHub
commit e7b87e9b68
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
141 changed files with 59798 additions and 8503 deletions

View file

@ -0,0 +1,32 @@
{
"theme_color": "#1d273b",
"background_color": "#f1f5f9",
"display": "standalone",
"scope": "/",
"start_url": "/",
"name": "b1gMail ACP",
"short_name": "ACP",
"description": "b1gMail Administration (ACP)",
"icons": [
{
"src": "/admin/templates/images/icon-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "/admin/templates/images/icon-256x256.png",
"sizes": "256x256",
"type": "image/png"
},
{
"src": "/admin/templates/images/icon-384x384.png",
"sizes": "384x384",
"type": "image/png"
},
{
"src": "/admin/templates/images/icon-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
]
}

View file

@ -1,22 +1,31 @@
<p align="center"> <div class="text-center">
<img src="{$tpldir}images/about_logo.png" width="242" height="171" border="0" alt="" /> <img src="{$tpldir}images/about_logo.png" width="242" height="171" border="0" alt="" />
</p> </div>
<p align="center"> <div class="text-center">
<br /> <br />
<b>b1gMail</b><br /> <b>b1gMail</b><br />
<i> <i>
{lng p="version"} {$version} {lng p="version"} {$version}
</i> </i>
</p> </div>
<p align="center"> <div class="text-center">
Copyright &copy; 2002-2021 Patrick Schlangen, 2022 <a target="_blank" href="https://www.b1gmail.eu" rel="noreferrer">b1gMail.eu Project</a> Copyright &copy; 2002-2021 Patrick Schlangen<br />
</p> Copyright &copy; 2022-{$smarty.now|date_format:"%Y"} <a target="_blank" href="https://www.b1gmail.eu" rel="noreferrer">b1gMail.eu Project</a>
</div>
<p align="center"> </div>
<small> <div class="card-footer">
<div class="row">
<div class="col-md-6">
<h4>Template</h4>
Template <a href="https://tabler.io/" target="_blank" rel="noreferrer">Tabler (1.0.0 Beta16)</a><br />
Bootstrap <a href="https://getbootstrap.com/" target="_blank" rel="noreferrer">Bootstrap</a><br />
</div>
<div class="col-md-6">
<h4>Icons</h4>
Font Awesome <a href="https://fontawesome.com/" target="_blank" rel="noreferrer">Font Awesome</a><br />
{lng p="acpiconsfrom"} <a href="http://www.fatcow.com/free-icons" target="_blank" rel="noreferrer">FatCow Web Hosting</a><br /> {lng p="acpiconsfrom"} <a href="http://www.fatcow.com/free-icons" target="_blank" rel="noreferrer">FatCow Web Hosting</a><br />
{lng p="acpbgfrom"} <a href="http://subtlepatterns.com" target="_blank" rel="noreferrer">subtlepatterns.com</a> </div>
</small> </div>
</p> </div>

View file

@ -1,53 +1,68 @@
<form action="abuse.php?sid={$sid}" method="post" onsubmit="spin(this)" name="f1"> <form action="abuse.php?sid={$sid}" method="post" onsubmit="spin(this)" name="f1">
<input type="hidden" name="page" id="page" value="{$pageNo}" /> <input type="hidden" name="page" id="page" value="{$pageNo}" />
<input type="hidden" name="sortBy" id="sortBy" value="{$sortBy}" /> <input type="hidden" name="sortBy" id="sortBy" value="{$sortBy}" />
<input type="hidden" name="sortOrder" id="sortOrder" value="{$sortOrder}" /> <input type="hidden" name="sortOrder" id="sortOrder" value="{$sortOrder}" />
<input type="hidden" name="singleAction" id="singleAction" value="" /> <input type="hidden" name="singleAction" id="singleAction" value="" />
<input type="hidden" name="singleID" id="singleID" value="" /> <input type="hidden" name="singleID" id="singleID" value="" />
<fieldset> <fieldset>
<legend>{lng p="users"}</legend> <legend>{lng p="users"}</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 20px;">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'users[]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th style="width: 25px; text-align: center;"><a href="javascript:invertSelection(document.forms.f1,'users[]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th width="60"><a href="javascript:updateSort('id');">{lng p="id"} <th style="width: 60px;"><a href="javascript:updateSort('id');">{lng p="id"}
{if $sortBy=='id'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='id'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th><a href="javascript:updateSort('email');">{lng p="email"} <th><a href="javascript:updateSort('email');">{lng p="email"}
{if $sortBy=='email'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='email'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="80"><a href="javascript:updateSort('pointsum');">{lng p="points"} <th style="width: 80px;"><a href="javascript:updateSort('pointsum');">{lng p="points"}
{if $sortBy=='pointsum'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='pointsum'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="120">&nbsp;</th> <th style="width: 120px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$users item=user} {foreach from=$users item=user}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/user_{$user.statusImg}.png" border="0" width="16" height="16" alt="" /></td> <td class="text-center">
<td align="center"><input type="checkbox" name="users[]" value="{$user.id}" /></td> {if $user.statusImg == 'active'}
<i class="fa-solid fa-user"></i>
{elseif $user.statusImg == 'nologin'}
<i class="fa-regular fa-user"></i>
{elseif $user.statusImg == 'deleted'}
<i class="fa-solid fa-user-xmark"></i>
{elseif $user.statusImg == 'locked'}
<i class="fa-solid fa-user-lock"></i>
{/if}
</td>
<td class="text-center"><input type="checkbox" name="users[]" value="{$user.id}" /></td>
<td>{$user.id}</td> <td>{$user.id}</td>
<td><a href="abuse.php?do=show&userid={$user.id}&sid={$sid}">{email value=$user.email cut=30}</a></td> <td><a href="abuse.php?do=show&userid={$user.id}&sid={$sid}">{email value=$user.email cut=30}</a></td>
<td><img src="templates/images/indicator_{$user.indicator}.png" border="0" alt="" align="absmiddle" /> <td><i class="fa-regular fa-circle text-{$user.indicator}"></i>&nbsp; <a href="abuse.php?do=show&userid={$user.id}&sid={$sid}">{$user.pointsum}</a></td>
<a href="abuse.php?do=show&userid={$user.id}&sid={$sid}"> <td class="text-nowrap">
{$user.pointsum} <div class="btn-group btn-group-sm">
</a></td> <a href="abuse.php?do=show&userid={$user.id}&sid={$sid}" title="{lng p="show"}" class="btn btn-sm"><i class="fa-solid fa-magnifying-glass"></i></a>
<td> <a href="users.php?do=edit&id={$user.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
<a href="abuse.php?do=show&userid={$user.id}&sid={$sid}" title="{lng p="show"}"><img src="{$tpldir}images/view.png" border="0" alt="{lng p="show"}" width="16" height="16" /></a> <a href="javascript:singleAction('{if $user.gesperrt=='no'}lock{elseif $user.gesperrt=='yes'}unlock{elseif $user.gesperrt=='locked'}activate{elseif $user.gesperrt=='delete'}recover{/if}', '{$user.id}');" class="btn btn-sm">{if $user.gesperrt=='no'}<i class="fa-solid fa-lock"></i>{elseif $user.gesperrt=='yes'}<i class="fa-solid fa-lock-open"></i>{elseif $user.gesperrt=='locked'}<i class="fa-solid fa-lock-open"></i>{elseif $user.gesperrt=='unlock'}<i class="fa-solid fa-lock-open"></i>{elseif $user.gesperrt=='delete'}<i class="fa-solid fa-hammer"></i>{/if}</a>
<a href="users.php?do=edit&id={$user.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="javascript:singleAction('delete', '{$user.id}');" class="btn btn-sm">{if $user.gesperrt=='delete'}<i class="fa-regular fa-trash-can text-danger"></i>{else}<i class="fa-regular fa-trash-can"></i>{/if}</a>
<a href="javascript:singleAction('{if $user.gesperrt=='no'}lock{elseif $user.gesperrt=='yes'}unlock{elseif $user.gesperrt=='locked'}activate{elseif $user.gesperrt=='delete'}recover{/if}', '{$user.id}');"><img src="{$tpldir}images/{if $user.gesperrt=='no'}lock{elseif $user.gesperrt=='yes'}unlock{elseif $user.gesperrt=='locked'}unlock{elseif $user.gesperrt=='delete'}recover{/if}.png" border="0" alt="{if $user.gesperrt=='no'}{lng p="lock"}{elseif $user.gesperrt=='yes'}{lng p="unlock"}{elseif $user.gesperrt=='locked'}{lng p="activate"}{elseif $user.gesperrt=='delete'}{lng p="recover"}{/if}" width="16" height="16" /></a> <a href="users.php?do=login&id={$user.id}&sid={$sid}" target="_blank" onclick="return confirm('{lng p="loginwarning"}');" class="btn btn-sm"><i class="fa-solid fa-house-chimney-user"></i></a>
<a href="javascript:singleAction('delete', '{$user.id}');"><img src="{$tpldir}images/{if $user.gesperrt=='delete'}delete{else}trash{/if}.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a> </div>
<a href="users.php?do=login&id={$user.id}&sid={$sid}" target="_blank" onclick="return confirm('{lng p="loginwarning"}');"><img src="{$tpldir}images/login.png" border="0" alt="{lng p="login"}" width="16" height="16" /></a>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="6"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
<option value="lock">{lng p="lock"}</option> <option value="lock">{lng p="lock"}</option>
@ -61,16 +76,14 @@
<option value="moveto_{$groupID}">{lng p="moveto"} &quot;{text value=$group.title cut=25}&quot;</option> <option value="moveto_{$groupID}">{lng p="moveto"} &quot;{text value=$group.title cut=25}&quot;</option>
{/foreach} {/foreach}
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
<div style="float:right;padding-top:3px;"> <div class="text-end">
{lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp; {lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp;
</div> </div>
</td> </div>
</tr> </div>
</table> </fieldset>
</fieldset>
</form> </form>

View file

@ -1,112 +1,153 @@
<fieldset> <fieldset>
<legend>{lng p="user"}: {email value=$userRow.email}</legend> <legend>{lng p="user"}: {email value=$userRow.email}</legend>
<form action="abuse.php?do=show&userid={$userID}&sid={$sid}" method="post"> <div action="abuse.php?do=show&userid={$userID}&sid={$sid}" method="post">
<table width="100%"> <div class="row">
<tr> <div class="col-md-6">
<td class="td1">{lng p="status"}:</td> <div class="row">
<td class="td2"><img src="{$tpldir}images/user_{$userStatusImg}.png" border="0" width="16" height="16" alt="" align="absmiddle" /> <label class="col-sm-4 col-form-label">{lng p="status"}</label>
{if $userRow.gesperrt=='no'}{lng p="active"} <div class="col-sm-8">
<div class="form-control-plaintext">
{if $userRow.gesperrt=='no'}<i class="fa-solid fa-lock"></i>{elseif $userRow.gesperrt=='yes'}<i class="fa-solid fa-lock-open"></i>{elseif $userRow.gesperrt=='locked'}<i class="fa-solid fa-lock-open"></i>{elseif $userRow.gesperrt=='delete'}<i class="fa-solid fa-hammer"></i>{/if}&nbsp; {if $userRow.gesperrt=='no'}{lng p="active"}
{elseif $userRow.gesperrt=='yes'}{lng p="locked"} {elseif $userRow.gesperrt=='yes'}{lng p="locked"}
{elseif $userRow.gesperrt=='locked'}{lng p="notactivated"} {elseif $userRow.gesperrt=='locked'}{lng p="notactivated"}
{elseif $userRow.gesperrt=='delete'}{lng p="deleted"}{/if} {elseif $userRow.gesperrt=='delete'}{lng p="deleted"}{/if}
</td> </div>
<td class="td1">{lng p="group"}:</td> </div>
<td class="td2"><img src="{$tpldir}images/ico_group.png" border="0" width="16" height="16" alt="" align="absmiddle" /> </div>
<a href="groups.php?do=edit&id={$groupRow.id}&sid={$sid}">{text value=$groupRow.titel}</a></td> <div class="row">
</tr> <label class="col-sm-4 col-form-label">{lng p="email"}</label>
<tr> <div class="col-sm-8">
<td class="td1">{lng p="email"}:</td> <div class="form-control-plaintext">
<td class="td2">
<small>{$emailMails} {lng p="emails"}, {$emailFolders} {lng p="folders"}</small> <small>{$emailMails} {lng p="emails"}, {$emailFolders} {lng p="folders"}</small>
{progressBar value=$userRow.mailspace_used max=$groupRow.storage width=200} {progressBar value=$userRow.mailspace_used max=$groupRow.storage width=200}
<small>{size bytes=$userRow.mailspace_used} / {size bytes=$groupRow.storage} {lng p="used"}</small> <small>{size bytes=$userRow.mailspace_used} / {size bytes=$groupRow.storage} {lng p="used"}</small>
</td> </div>
</div>
<td class="td1">{lng p="receivedmails"}:<br />{lng p="sentmails"}:</td> </div>
<td class="td2">{$userRow.received_mails}<br />{$userRow.sent_mails}</td> <div class="row">
</tr> <label class="col-sm-4 col-form-label">{lng p="webdisk"}</label>
<tr> <div class="col-sm-8">
<td class="td1" width="120">{lng p="webdisk"}:</td> <div class="form-control-plaintext">
<td class="td2">
<small>{$diskFiles} {lng p="files"}, {$diskFolders} {lng p="folders"}</small> <small>{$diskFiles} {lng p="files"}, {$diskFolders} {lng p="folders"}</small>
{progressBar value=$userRow.diskspace_used max=$groupRow.webdisk width=200} {progressBar value=$userRow.diskspace_used max=$groupRow.webdisk width=200}
<small>{size bytes=$userRow.diskspace_used} / {size bytes=$groupRow.webdisk} {lng p="used"}</small> <small>{size bytes=$userRow.diskspace_used} / {size bytes=$groupRow.webdisk} {lng p="used"}</small>
</td> </div>
<td class="td1" width="120">{lng p="wdtraffic"}:</td> </div>
<td class="td2"> </div>
{if $groupRow.traffic>0}{progressBar value=$userRow.traffic_down+$userRow.traffic_up max=$groupRow.traffic width=200}{/if}
<small>{size bytes=$userRow.traffic_down+$userRow.traffic_up}{if $groupRow.traffic>0} / {size bytes=$groupRow.traffic}{/if} {lng p="used2"}</small>
</td>
</tr>
{if $groupRow.sms_monat>0} {if $groupRow.sms_monat>0}
<tr> <div class="row">
<td class="td1">{lng p="monthasset"}:</td> <label class="col-sm-4 col-form-label">{lng p="monthasset"}</label>
<td class="td2"> <div class="col-sm-8">
<div class="form-control-plaintext">
{progressBar value=$usedMonthSMS max=$groupRow.sms_monat width=200} {progressBar value=$usedMonthSMS max=$groupRow.sms_monat width=200}
<small>{$usedMonthSMS} / {$groupRow.sms_monat} {lng p="credits"} {lng p="used2"}</small> <small>{$usedMonthSMS} / {$groupRow.sms_monat} {lng p="credits"} {lng p="used2"}</small>
</td> </div>
<td colspan="2"></td> </div>
</tr> </div>
{/if} {/if}
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="lastlogin"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">{date timestamp=$userRow.lastlogin nice=true nozero=true}<br /><small>{text value=$userRow.ip}</small></div>
</div>
</div>
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="regdate"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">{date timestamp=$userRow.reg_date nice=true nozero=true}<br /><small>{text value=$userRow.reg_ip}</small></div>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="group"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext"><a href="groups.php?do=edit&id={$groupRow.id}&sid={$sid}">{text value=$groupRow.titel}</a></div>
</div>
</div>
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="receivedmails"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">{$userRow.received_mails}</div>
</div>
</div>
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="sentmails"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">{$userRow.sent_mails}</div>
</div>
</div>
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="wdtraffic"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">
{if $groupRow.traffic>0}{progressBar value=$userRow.traffic_down+$userRow.traffic_up max=$groupRow.traffic width=200}{/if}
<small>{size bytes=$userRow.traffic_down+$userRow.traffic_up}{if $groupRow.traffic>0} / {size bytes=$groupRow.traffic}{/if} {lng p="used2"}</small>
</div>
</div>
</div>
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="lastimap"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">{date timestamp=$userRow.last_imap nice=true nozero=true}</div>
</div>
</div>
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="lastpop3"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">{date timestamp=$userRow.last_pop3 nice=true nozero=true}</div>
</div>
</div>
<div class="row">
<label class="col-sm-4 col-form-label">{lng p="lastsmtp"}</label>
<div class="col-sm-8">
<div class="form-control-plaintext">{date timestamp=$userRow.last_smtp nice=true nozero=true}</div>
</div>
</div>
</div>
</div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="lastlogin"}:</td> <label class="col-sm-2 col-form-label">{lng p="notes"}</label>
<td class="td2">{date timestamp=$userRow.lastlogin nice=true nozero=true}</td> <div class="col-sm-10">
<td class="td1">{lng p="ip"}:</td> <textarea class="form-control" name="notes" placeholder="{lng p="notes"}">{text value=$userRow.notes allowEmpty=true}</textarea>
<td class="td2">{text value=$userRow.ip}</td> </div>
</tr> </div>
<tr>
<td class="td1">{lng p="regdate"}:</td>
<td class="td2">{date timestamp=$userRow.reg_date nice=true nozero=true}</td>
<td class="td1">{lng p="ip"}:</td>
<td class="td2">{text value=$userRow.reg_ip}</td>
</tr>
<tr>
<td class="td1">{lng p="lastpop3"}:</td>
<td class="td2">{date timestamp=$userRow.last_pop3 nice=true nozero=true}</td>
<td class="td1">{lng p="lastsmtp"}:</td>
<td class="td2">{date timestamp=$userRow.last_smtp nice=true nozero=true}</td>
</tr>
<tr>
<td class="td1">{lng p="lastimap"}:</td>
<td class="td2">{date timestamp=$userRow.last_imap nice=true nozero=true}</td>
<td colspan="2"></td>
</tr>
<tr>
<td class="td1">{lng p="notes"}:</td>
<td class="td2" colspan="3">
<textarea style="width:100%;height:80px;" name="notes">{text value=$userRow.notes allowEmpty=true}</textarea>
</td>
</tr>
</table>
<div align="center" style="margin-top:0.5em;"> <div class="mb-3">
<button class="button" type="submit" name="save"><img src="{$tpldir}images/ico_save.png" align="absmiddle" border="0" alt="" width="16" height="16" /> <div class="input-group">
{lng p="save"}</button> <button class="btn btn-outline-secondary" type="submit" name="save"><i class="fa-regular fa-floppy-disk"></i>&nbsp; {lng p="save"}</button>
<button class="button" onclick="document.location.href='users.php?do=edit&id={$userID}&sid={$sid}';return(false);"><img src="{$tpldir}images/user_action.png" align="absmiddle" border="0" alt="" width="16" height="16" /> <button class="btn btn-outline-secondary" onclick="document.location.href='users.php?do=edit&id={$userID}&sid={$sid}';return(false);"><i class="fa-regular fa-id-card"></i>&nbsp; {lng p="profile"}</button>
{lng p="profile"}</button> <button class="btn btn-outline-secondary" onclick="window.singleAction('{if $userRow.gesperrt=='no'}lock{elseif $userRow.gesperrt=='yes'}unlock{elseif $userRow.gesperrt=='locked'}activate{elseif $userRow.gesperrt=='delete'}recover{/if}User', '{$userRow.id}');return(false);">{if $userRow.gesperrt=='no'}<i class="fa-solid fa-lock"></i>{elseif $userRow.gesperrt=='yes'}<i class="fa-solid fa-lock-open"></i>{elseif $userRow.gesperrt=='locked'}<i class="fa-solid fa-lock-open"></i>{elseif $userRow.gesperrt=='delete'}<i class="fa-solid fa-hammer"></i>{/if}&nbsp; {if $userRow.gesperrt=='no'}{lng p="lock"}{elseif $userRow.gesperrt=='yes'}{lng p="unlock"}{elseif $userRow.gesperrt=='locked'}{lng p="activate"}{elseif $userRow.gesperrt=='delete'}&nbsp; {lng p="recover"}{/if}</button>
<button class="button" onclick="window.singleAction('{if $userRow.gesperrt=='no'}lock{elseif $userRow.gesperrt=='yes'}unlock{elseif $userRow.gesperrt=='locked'}activate{elseif $userRow.gesperrt=='delete'}recover{/if}User', '{$userRow.id}');return(false);"><img src="{$tpldir}images/{if $userRow.gesperrt=='no'}lock{elseif $userRow.gesperrt=='yes'}unlock{elseif $userRow.gesperrt=='locked'}unlock{elseif $userRow.gesperrt=='delete'}recover{/if}.png" align="absmiddle" border="0" alt="" width="16" height="16" /> <button class="btn btn-outline-secondary" onclick="window.singleAction('deleteUser', '{$userRow.id}');return(false);">{if $userRow.gesperrt=='delete'}<i class="fa-regular fa-trash-can text-danger"></i>{else}<i class="fa-regular fa-trash-can"></i>{/if}&nbsp; {lng p="delete"}</button>
{if $userRow.gesperrt=='no'}{lng p="lock"}{elseif $userRow.gesperrt=='yes'}{lng p="unlock"}{elseif $userRow.gesperrt=='locked'}{lng p="activate"}{elseif $userRow.gesperrt=='delete'}{lng p="recover"}{/if}</button> <button class="btn btn-outline-secondary" onclick="if(confirm('{lng p="loginwarning"}')) window.open('users.php?do=login&id={$userID}&sid={$sid}');return(false);"><i class="fa-solid fa-house-chimney-user"></i>&nbsp; {lng p="login"}</button>
<button class="button" onclick="window.singleAction('deleteUser', '{$userRow.id}');return(false);"><img src="{$tpldir}images/{if $userRow.gesperrt=='delete'}delete{else}trash{/if}.png" align="absmiddle" border="0" alt="" width="16" height="16" /> </div>
{lng p="delete"}</button>
<button class="button" onclick="if(confirm('{lng p="loginwarning"}')) window.open('users.php?do=login&id={$userID}&sid={$sid}');return(false);"><img src="{$tpldir}images/login.png" align="absmiddle" border="0" alt="" width="16" height="16" />
{lng p="login"}</button>
</div> </div>
</form> </form>
</fieldset> </fieldset>
{if $sendStats} {if $sendStats OR $recvStats}
<fieldset class="collapsed"> <fieldset>
<legend><a href="javascript:;" onclick="toggleFieldset(this)">{lng p="sendstats"}</a> ({lng p="last7d"})</legend> <legend>{lng p="stats"}</legend>
<div class="content"> <div class="accordion accordion-flush" id="sendstats">
<table class="list" id="sendStatsTable"> {if $sendStats}
<div class="accordion-item">
<div class="accordion-header" id="heading-sendstats">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapse-sendstats" aria-expanded="false">{lng p="sendstats"} ({lng p="last7d"})</button>
</div>
<div id="collapse-sendstats" class="accordion-collapse collapse" data-bs-parent="#sendstats" style="">
<div class="accordion-body pt-0">
<div class="table-responsive card">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th>{lng p="timeframe"}</th> <th>{lng p="timeframe"}</th>
<th width="20%">{lng p="mails"}</th> <th style="width: 20%;">{lng p="mails"}</th>
<th width="20%">&sum; {lng p="recipients"}</th> <th style="width: 20%;">&sum; {lng p="recipients"}</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$sendStats item=stat} {foreach from=$sendStats item=stat}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}" data-time-stamp="{$stat.timeStamp}"> <tr class="{$class}" data-time-stamp="{$stat.timeStamp}">
@ -119,21 +160,30 @@
</tr> </tr>
<tbody id="sendStats_{$stat.timeStamp}" style="display:none;"></tbody> <tbody id="sendStats_{$stat.timeStamp}" style="display:none;"></tbody>
{/foreach} {/foreach}
</tbody>
</table> </table>
</div> </div>
</fieldset> </div>
{/if} </div>
</div>
{if $recvStats} {/if}
<fieldset class="collapsed"> {if $recvStats}
<legend><a href="javascript:;" onclick="toggleFieldset(this)">{lng p="recvstats"}</a> ({lng p="last7d"})</legend> <div class="accordion-item">
<div class="content"> <div class="accordion-header" id="heading-recvstats">
<table class="list" id="sendStatsTable"> <button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapse-recvstats" aria-expanded="false">{lng p="recvstats"} ({lng p="last7d"})</button>
</div>
<div id="collapse-recvstats" class="accordion-collapse collapse" data-bs-parent="#sendstats" style="">
<div class="accordion-body pt-0">
<div class="table-responsive card">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th>{lng p="timeframe"}</th> <th>{lng p="timeframe"}</th>
<th width="20%">{lng p="mails"}</th> <th style="width: 20%;">{lng p="mails"}</th>
<th width="20%">&sum; {lng p="size"}</th> <th style="width: 20%;">&sum; {lng p="recipients"}</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$recvStats item=stat} {foreach from=$recvStats item=stat}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}" data-time-stamp="{$stat.timeStamp}"> <tr class="{$class}" data-time-stamp="{$stat.timeStamp}">
@ -146,67 +196,74 @@
</tr> </tr>
<tbody id="recvStats_{$stat.timeStamp}" style="display:none;"></tbody> <tbody id="recvStats_{$stat.timeStamp}" style="display:none;"></tbody>
{/foreach} {/foreach}
</tbody>
</table> </table>
</div> </div>
</fieldset> </div>
</div>
</div>
{/if}
</div>
</fieldset>
{/if} {/if}
<form action="abuse.php?do=show&userid={$userID}&sid={$sid}" method="post" onsubmit="spin(this)" name="f1"> <form action="abuse.php?do=show&userid={$userID}&sid={$sid}" method="post" onsubmit="spin(this)" name="f1">
<input type="hidden" name="page" id="page" value="{$pageNo}" /> <input type="hidden" name="page" id="page" value="{$pageNo}" />
<input type="hidden" name="singleAction" id="singleAction" value="" /> <input type="hidden" name="singleAction" id="singleAction" value="" />
<input type="hidden" name="singleID" id="singleID" value="" /> <input type="hidden" name="singleID" id="singleID" value="" />
<fieldset> <fieldset>
<legend>{lng p="points"}</legend> <legend>{lng p="points"}</legend>
<table class="list"> <div class="table-responsive card">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="22">&nbsp;</th> <th style="width: 40px;">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'entries[]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th style="width: 25px; text-align: center;"><a href="javascript:invertSelection(document.forms.f1,'entries[]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th width="80">{lng p="points"}</th> <th style="width: 80px;">{lng p="points"}</th>
<th>{lng p="type"}</th> <th>{lng p="type"}</th>
<th>{lng p="comment"}</th> <th>{lng p="comment"}</th>
<th width="150">{lng p="date"} <th style="width: 150px;">{lng p="date"}&nbsp; <img src="{$tpldir}images/sort_desc.png" border="0" alt="" width="7" height="6" align="absmiddle" /></th>
<img src="{$tpldir}images/sort_desc.png" border="0" alt="" width="7" height="6" align="absmiddle" /></th> <th style="width: 80px;">{lng p="sum"}</th>
<th width="80">{lng p="sum"}</th> <th style="width: 32px;">&nbsp;</th>
<th width="32">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$points item=entry} {foreach from=$points item=entry}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"{if $entry.expired} style="text-decoration:line-through;"{/if}> <tr class="{$class}"{if $entry.expired} style="text-decoration:line-through;"{/if}>
<td align="center"><img src="{$tpldir}images/indicator_{$entry.indicator}.png" border="0" width="16" height="16" alt="" /></td> <td class="text-center"><i class="fa-regular fa-circle text-{$entry.indicator}"></i></td>
<td align="center"><input type="checkbox" name="entries[]" value="{$entry.entryid}" /></td> <td class="text-center"><input type="checkbox" name="entries[]" value="{$entry.entryid}" /></td>
<td>{$entry.points}</td> <td>{$entry.points}</td>
<td>{$entry.typeText}</td> <td>{$entry.typeText}</td>
<td>{text value=$entry.comment}</td> <td>{text value=$entry.comment}</td>
<td>{date timestamp=$entry.date nice=true}</td> <td>{date timestamp=$entry.date nice=true}</td>
<td>{$entry.sum}</td> <td>{$entry.sum}</td>
<td> <td>
<a href="javascript:singleAction('delete', '{$entry.entryid}');" title="{lng p="delete"}"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a> <a href="javascript:singleAction('delete', '{$entry.entryid}');" title="{lng p="delete"}" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> <div class="card-footer">
<div style="float:left;"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
<div style="float:right;padding-top:3px;"> <div class="text-end">
{lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp; {lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp;
</div> </div>
</td> </div>
</tr> </div>
</table> </fieldset>
</fieldset>
</form> </form>

View file

@ -1,39 +1,53 @@
<form action="activity.php?sid={$sid}" method="post" onsubmit="spin(this)" name="f1"> <form action="activity.php?sid={$sid}" method="post" onsubmit="spin(this)" name="f1">
<input type="hidden" name="page" id="page" value="{$pageNo}" /> <input type="hidden" name="page" id="page" value="{$pageNo}" />
<input type="hidden" name="sortBy" id="sortBy" value="{$sortBy}" /> <input type="hidden" name="sortBy" id="sortBy" value="{$sortBy}" />
<input type="hidden" name="sortOrder" id="sortOrder" value="{$sortOrder}" /> <input type="hidden" name="sortOrder" id="sortOrder" value="{$sortOrder}" />
<input type="hidden" name="singleAction" id="singleAction" value="" /> <input type="hidden" name="singleAction" id="singleAction" value="" />
<input type="hidden" name="singleID" id="singleID" value="" /> <input type="hidden" name="singleID" id="singleID" value="" />
<fieldset> <fieldset>
<legend>{lng p="users"}</legend> <legend>{lng p="users"}</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 20px;">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'user_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th style="width: 25px;" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'user_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th><a href="javascript:updateSort('id');">{lng p="id"} <th><a href="javascript:updateSort('id');">{lng p="id"}
{if $sortBy=='id'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='id'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th><a href="javascript:updateSort('email');">{lng p="email"} <th><a href="javascript:updateSort('email');">{lng p="email"}
{if $sortBy=='email'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='email'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="80"><a href="javascript:updateSort('mailspace_used');">{lng p="email"} <th style="width: 80px;"><a href="javascript:updateSort('mailspace_used');">{lng p="email"}
{if $sortBy=='mailspace_used'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='mailspace_used'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="80"><a href="javascript:updateSort('diskspace_used');">{lng p="webdisk"} <th style="width: 80px;"><a href="javascript:updateSort('diskspace_used');">{lng p="webdisk"}
{if $sortBy=='diskspace_used'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='diskspace_used'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="80"><a href="javascript:updateSort('traffic');">{lng p="wdtrafficshort"} <th style="width: 80px;"><a href="javascript:updateSort('traffic');">{lng p="wdtrafficshort"}
{if $sortBy=='traffic'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='traffic'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="80"><a href="javascript:updateSort('received_mails');">{lng p="receivedmails"} <th style="width: 80px;"><a href="javascript:updateSort('received_mails');">{lng p="receivedmails"}
{if $sortBy=='received_mails'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='received_mails'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="80"><a href="javascript:updateSort('sent_mails');">{lng p="sentmails"} <th style="width: 80px;"><a href="javascript:updateSort('sent_mails');">{lng p="sentmails"}
{if $sortBy=='sent_mails'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='sent_mails'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="110">&nbsp;</th> <th style="width: 110px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$users item=user} {foreach from=$users item=user}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/user_{$user.statusImg}.png" border="0" width="16" height="16" alt="" /></td> <td align="center">
<td align="center"><input type="checkbox" name="user_{$user.id}" /></td> {if $user.statusImg == 'active'}
<i class="fa-solid fa-user"></i>
{elseif $user.statusImg == 'nologin'}
<i class="fa-regular fa-user"></i>
{elseif $user.statusImg == 'deleted'}
<i class="fa-solid fa-user-xmark"></i>
{elseif $user.statusImg == 'locked'}
<i class="fa-solid fa-user-lock"></i>
{/if}
</td>
<td class="text-center"><input type="checkbox" name="user_{$user.id}" /></td>
<td>{$user.id}</td> <td>{$user.id}</td>
<td><a href="users.php?do=edit&id={$user.id}&sid={$sid}">{email value=$user.email cut=30}</a></td> <td><a href="users.php?do=edit&id={$user.id}&sid={$sid}">{email value=$user.email cut=30}</a></td>
<td>{progressBar value=$user.mailspace_used max=$user.mailspace_max width=75}</td> <td>{progressBar value=$user.mailspace_used max=$user.mailspace_max width=75}</td>
@ -41,45 +55,44 @@
<td>{progressBar value=$user.traffic max=$user.traffic_max width=75}</td> <td>{progressBar value=$user.traffic max=$user.traffic_max width=75}</td>
<td>{$user.received_mails}</td> <td>{$user.received_mails}</td>
<td>{$user.sent_mails}</td> <td>{$user.sent_mails}</td>
<td> <td class="text-nowrap">
<a href="users.php?do=edit&id={$user.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
<a href="javascript:singleAction('{if $user.gesperrt=='no'}lock{elseif $user.gesperrt=='yes'}unlock{elseif $user.gesperrt=='locked'}activate{elseif $user.gesperrt=='delete'}recover{/if}', '{$user.id}');"><img src="{$tpldir}images/{if $user.gesperrt=='no'}lock{elseif $user.gesperrt=='yes'}unlock{elseif $user.gesperrt=='locked'}unlock{elseif $user.gesperrt=='delete'}recover{/if}.png" border="0" alt="{if $user.gesperrt=='no'}{lng p="lock"}{elseif $user.gesperrt=='yes'}{lng p="unlock"}{elseif $user.gesperrt=='locked'}{lng p="activate"}{elseif $user.gesperrt=='delete'}{lng p="recover"}{/if}" width="16" height="16" /></a> <a href="users.php?do=edit&id={$user.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
<a href="javascript:singleAction('delete', '{$user.id}');"><img src="{$tpldir}images/{if $user.gesperrt=='delete'}delete{else}trash{/if}.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a> <a href="javascript:singleAction('{if $user.gesperrt=='no'}lock{elseif $user.gesperrt=='yes'}unlock{elseif $user.gesperrt=='locked'}activate{elseif $user.gesperrt=='delete'}recover{/if}', '{$user.id}');" class="btn btn-sm">{if $user.gesperrt=='no'}<i class="fa-solid fa-lock"></i>{elseif $user.gesperrt=='yes'}<i class="fa-solid fa-lock-open"></i>{elseif $user.gesperrt=='locked'}<i class="fa-solid fa-lock-open"></i>{elseif $user.gesperrt=='unlock'}<i class="fa-solid fa-lock-open"></i>{elseif $user.gesperrt=='delete'}<i class="fa-solid fa-hammer"></i>{/if}</a>
<!--<a href="javascript:singleAction('mail', '{$user.id}');"><img src="{$tpldir}images/ico_sendmail.png" border="0" alt="{lng p="sendmail"}" width="16" height="16" /></a>--> <a href="javascript:singleAction('delete', '{$user.id}');" class="btn btn-sm">{if $user.gesperrt=='delete'}<i class="fa-regular fa-trash-can text-danger"></i>{else}<i class="fa-regular fa-trash-can"></i>{/if}</a>
<a href="users.php?do=login&id={$user.id}&sid={$sid}" target="_blank" onclick="return confirm('{lng p="loginwarning"}');"><img src="{$tpldir}images/login.png" border="0" alt="{lng p="login"}" width="16" height="16" /></a> <a href="users.php?do=login&id={$user.id}&sid={$sid}" target="_blank" onclick="return confirm('{lng p="loginwarning"}');" class="btn btn-sm"><i class="fa-solid fa-house-chimney-user"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="10"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
<option value="lock">{lng p="lock"}</option> <option value="lock">{lng p="lock"}</option>
<option value="unlock">{lng p="unlock"}</option> <option value="unlock">{lng p="unlock"}</option>
<option value="restore">{lng p="restore"}</option> <option value="restore">{lng p="restore"}</option>
<!--<option value="mail">{lng p="sendmail"}</option>-->
</optgroup> </optgroup>
<optgroup label="{lng p="move"}"> <optgroup label="{lng p="move"}">
{foreach from=$groups item=group key=groupID} {foreach from=$groups item=group key=groupID}
<option value="moveto_{$groupID}">{lng p="moveto"} &quot;{text value=$group.title cut=25}&quot;</option> <option value="moveto_{$groupID}">{lng p="moveto"} &quot;{text value=$group.title cut=25}&quot;</option>
{/foreach} {/foreach}
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
<div style="float:right;padding-top:3px;"> <div class="text-end">
{lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp; {lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp;
</div> </div>
</td> </div>
</tr> </div>
</table> </fieldset>
</fieldset>
</form> </form>

View file

@ -1,44 +1,47 @@
<form action="admins.php?changePassword=true&sid={$sid}" method="post" onsubmit="spin(this)" autocomplete="off"> <div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="loggedinas"}</legend> <legend>{lng p="loggedinas"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="username"}</label>
<td width="40" valign="top" rowspan="3"><img src="{$tpldir}images/ico_users.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="username"}:</td> <div class="form-control-plaintext">{text value=$adminRow.username}</div>
<td class="td2">{text value=$adminRow.username}</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="name"}:</td> <label class="col-sm-4 col-form-label">{lng p="name"}</label>
<td class="td2">{text value=$adminRow.firstname} <div class="col-sm-8">
{text value=$adminRow.lastname}</td> <div class="form-control-plaintext">{text value=$adminRow.firstname} {text value=$adminRow.lastname}</div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="status"}:</td> <div class="mb-3 row">
<td class="td2">{if $adminRow.type==0}{lng p="superadmin"}{else}{lng p="admin"}{/if}</td> <label class="col-sm-4 col-form-label">{lng p="status"}</label>
</tr> <div class="col-sm-8">
</table> <div class="form-control-plaintext">{if $adminRow.type==0}{lng p="superadmin"}{else}{lng p="admin"}{/if}</div>
</div>
</div>
</fieldset> </fieldset>
</div>
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="password"}</legend> <legend>{lng p="password"}</legend>
<table> <form action="admins.php?changePassword=true&sid={$sid}" method="post" onsubmit="spin(this)" autocomplete="off">
<tr> <div class="mb-3 row">
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/ico_prefs_login.png" border="0" alt="" width="32" height="32" /></td> <label class="col-sm-4 col-form-label">{lng p="newpassword"}</label>
<td class="td1" width="220">{lng p="newpassword"}:</td> <div class="col-sm-8">
<td class="td2"><input type="password" name="newpw1" size="36" /></td> <input type="password" class="form-control" name="newpw1" placeholder="{lng p="newpassword"}">
</tr>
<tr>
<td class="td1">{lng p="newpassword"} ({lng p="repeat"}):</td>
<td class="td2"><input type="password" name="newpw2" size="36" /></td>
</tr>
</table>
</fieldset>
<p>
<div style="float:right" class="buttons">
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p> </div>
</form> <div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="newpassword"} ({lng p="repeat"})</label>
<div class="col-sm-8">
<input type="password" class="form-control" name="newpw2" placeholder="{lng p="newpassword"} ({lng p="repeat"})">
</div>
</div>
<div class="text-end"><input class="btn btn-primary" type="submit" value="{lng p="save"}" /></div>
</form>
</fieldset>
</div>
</div>

View file

@ -2,49 +2,52 @@
<legend>{lng p="admins"}</legend> <legend>{lng p="admins"}</legend>
<form action="admins.php?action=admins&sid={$sid}" name="f1" method="post" onsubmit="spin(this)"> <form action="admins.php?action=admins&sid={$sid}" name="f1" method="post" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 25px; text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'admin_');"><img src="{$tpldir}images/dot.png" alt="" width="16" /></a></th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'admin_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="name"}</th> <th>{lng p="name"}</th>
<th width="140">{lng p="status"}</th> <th style="width: 200px;">{lng p="status"}</th>
<th width="60">&nbsp;</th> <th style="width: 80px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$admins item=admin} {foreach from=$admins item=admin}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/user_active.png" border="0" alt="" width="16" height="16" /></td> <td class="text-center">{if $admin.adminid!=1}<input type="checkbox" name="admin_{$admin.adminid}" />{/if}</td>
<td align="center">{if $admin.adminid!=1}<input type="checkbox" name="admin_{$admin.adminid}" />{/if}</td> <td>{text value=$admin.firstname} {text value=$admin.lastname} ({text value=$admin.username})</td>
<td>{text value=$admin.username}<br />
<small>{text value=$admin.firstname} {text value=$admin.lastname}</small></td>
<td> <td>
{if $admin.type==0}{lng p="superadmin"}{else}{lng p="admin"}{/if} {if $admin.type==0}{lng p="superadmin"}{else}{lng p="admin"}{/if}
</td> </td>
<td> <td class="text-nowrap">
<a href="admins.php?action=admins&do=edit&id={$admin.adminid}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
{if $admin.adminid!=1}<a href="admins.php?action=admins&delete={$admin.adminid}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a>{/if} <a href="admins.php?action=admins&do=edit&id={$admin.adminid}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
{if $admin.adminid!=1}<a href="admins.php?action=admins&delete={$admin.adminid}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>{/if}
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="5"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -52,39 +55,53 @@
<legend>{lng p="addadmin"}</legend> <legend>{lng p="addadmin"}</legend>
<form action="admins.php?action=admins&add=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="admins.php?action=admins&add=true&sid={$sid}" method="post" onsubmit="spin(this)">
<table width="100%"> <div class="row">
<tr> <div class="col-md-6">
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/ico_users.png" border="0" alt="" width="32" height="32" /></td> <div class="mb-3 row">
<td class="td1" width="150">{lng p="username"}:</td> <label class="col-sm-4 col-form-label">{lng p="username"}</label>
<td class="td2"><input type="text" size="28" id="username" name="username" value="" /></td> <div class="col-sm-8">
</tr> <input type="text" class="form-control" id="username" name="username" placeholder="{lng p="username"}">
<tr> </div>
<td class="td1">{lng p="firstname"}:</td> </div>
<td class="td2"><input type="text" size="36" id="firstname" name="firstname" value="" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="firstname"}</label>
<tr> <div class="col-sm-8">
<td class="td1">{lng p="lastname"}:</td> <input type="text" class="form-control" id="firstname" name="firstname" placeholder="{lng p="firstname"}">
<td class="td2"><input type="text" size="36" id="lastname" name="lastname" value="" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="password"}:</td> <label class="col-sm-4 col-form-label">{lng p="lastname"}</label>
<td class="td2"><input type="password" size="28" id="pw1" name="pw1" value="" /></td> <div class="col-sm-8">
</tr> <input type="text" class="form-control" id="lastname" name="lastname" placeholder="{lng p="lastname"}">
<tr> </div>
<td class="td1">{lng p="password"} ({lng p="repeat"}):</td> </div>
<td class="td2"><input type="password" size="28" id="pw2" name="pw2" value="" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="type"}</label>
<tr> <div class="col-sm-8">
<td class="td1">{lng p="type"}:</td> <select class="form-select" name="type">
<td class="td2"><select name="type">
<option value="1">{lng p="admin"}</option> <option value="1">{lng p="admin"}</option>
<option value="0">{lng p="superadmin"}</option> <option value="0">{lng p="superadmin"}</option>
</select></td> </select>
</tr> </div>
</table> </div>
</div>
<p align="right"> <div class="col-md-6">
<input class="button" type="submit" value=" {lng p="add"} " /> <div class="mb-3 row">
</p> <label class="col-sm-4 col-form-label">{lng p="password"}</label>
<div class="col-sm-8">
<input type="password" class="form-control" id="pw1" name="pw1" placeholder="{lng p="password"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="password"} ({lng p="repeat"})</label>
<div class="col-sm-8">
<input type="password" class="form-control" id="pw2" name="pw2" placeholder="{lng p="password"} ({lng p="repeat"})">
</div>
</div>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value=" {lng p="add"} " />
</div>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,78 +1,90 @@
<form action="admins.php?action=admins&do=edit&id={$admin.adminid}&save=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="admins.php?action=admins&do=edit&id={$admin.adminid}&save=true&sid={$sid}" method="post" onsubmit="spin(this)">
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="editadmin"}: {text value=$admin.username}</legend> <legend>{lng p="editadmin"}: {text value=$admin.username}</legend>
<div class="mb-3 row">
<table width="100%"> <label class="col-sm-4 col-form-label">{lng p="username"}</label>
<tr> <div class="col-sm-8">
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/ico_users.png" border="0" alt="" width="32" height="32" /></td> <input type="text" class="form-control" id="username" name="username" value="{if isset($admin.username)}{text value=$admin.username}{/if}" placeholder="{lng p="username"}">
<td class="td1" width="220">{lng p="username"}:</td> </div>
<td class="td2"><input type="text" size="28" id="username" name="username" value="{if isset($admin.username)}{text value=$admin.username}{/if}" /></td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="firstname"}</label>
<td class="td1">{lng p="firstname"}:</td> <div class="col-sm-8">
<td class="td2"><input type="text" size="36" id="firstname" name="firstname" value="{if isset($admin.firstname)}{text value=$admin.firstname allowEmpty=true}{/if}" /></td> <input type="text" class="form-control" id="firstname" name="firstname" value="{if isset($admin.firstname)}{text value=$admin.firstname allowEmpty=true}{/if}" placeholder="{lng p="firstname"}">
</tr> </div>
<tr> </div>
<td class="td1">{lng p="lastname"}:</td> <div class="mb-3 row">
<td class="td2"><input type="text" size="36" id="lastname" name="lastname" value="{if isset($admin.lastname)}{text value=$admin.lastname allowEmpty=true}{/if}" /></td> <label class="col-sm-4 col-form-label">{lng p="lastname"}</label>
</tr> <div class="col-sm-8">
<tr> <input type="text" class="form-control" id="lastname" name="lastname" value="{if isset($admin.lastname)}{text value=$admin.lastname allowEmpty=true}{/if}" placeholder="{lng p="lastname"}">
<td class="td1">{lng p="type"}:</td> </div>
<td class="td2"><select name="type"{if $admin.adminid==1} disabled="disabled"{/if} onclick="EBID('perms').style.display=this.value==0?'none':'';"> </div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="type"}</label>
<div class="col-sm-8">
<select class="form-select" name="type"{if $admin.adminid==1} disabled="disabled"{/if} onclick="EBID('perms').style.display=this.value==0?'none':'';">
<option value="1"{if $admin.type==1} selected="selected"{/if}>{lng p="admin"}</option> <option value="1"{if $admin.type==1} selected="selected"{/if}>{lng p="admin"}</option>
<option value="0"{if $admin.type==0} selected="selected"{/if}>{lng p="superadmin"}</option> <option value="0"{if $admin.type==0} selected="selected"{/if}>{lng p="superadmin"}</option>
</select></td> </select>
</tr> </div>
</table> </div>
</fieldset> </fieldset>
</div>
<div class="col-md-6">
<fieldset>
<legend>{lng p="password"}</legend>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="newpassword"}</label>
<div class="col-sm-8">
<input type="password" class="form-control" id="newpw1" name="newpw1" placeholder="{lng p="newpassword"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="newpassword"} ({lng p="repeat"})</label>
<div class="col-sm-8">
<input type="password" class="form-control" id="newpw2" name="newpw2" placeholder="{lng p="newpassword"} ({lng p="repeat"})">
</div>
</div>
</fieldset>
</div>
</div>
<fieldset id="perms" style="display:{if $admin.type==0}none{/if};"> <fieldset id="perms" style="display:{if $admin.type==0}none{/if};">
<legend>{lng p="permissions"}</legend> <legend>{lng p="permissions"}</legend>
<table width="100%"> <div class="row">
<tr> <div class="col-md-6">
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/ico_prefs_validation.png" border="0" alt="" width="32" height="32" /></td> <div class="mb-3">
<td class="td1" width="220">{lng p="areas"}:</td> <label class="form-label">{lng p="areas"}</div>
<td class="td2">
<div>
{foreach from=$permsTable item=permTitle key=permName} {foreach from=$permsTable item=permTitle key=permName}
<input type="checkbox" name="perms[{$permName}]" value="1" id="perm_{$permName}"{if $admin.perms.$permName} checked="checked"{/if} /> <label class="form-check">
<label for="perm_{$permName}" style="font-weight:bold;">{$permTitle}</label><br /> <input class="form-check-input" type="checkbox" name="perms[{$permName}]" value="1" id="perm_{$permName}"{if $admin.perms.$permName} checked="checked"{/if}>
<span class="form-check-label">{$permTitle}</span>
</label>
{/foreach} {/foreach}
</td>
</tr>
<tr>
<td class="td1">{lng p="plugins"}:</td>
<td class="td2">
{foreach from=$pluginList item=pluginTitle key=pluginName}
<input type="checkbox" name="perms[plugins][{$pluginName}]" value="1" id="plugin_{$pluginName}"{if $admin.perms.plugins.$pluginName} checked="checked"{/if} />
<label for="plugin_{$pluginName}" style="font-weight:bold;">{text value=$pluginTitle}</label><br />
{/foreach}
</td>
</tr>
</table>
</fieldset>
<fieldset>
<legend>{lng p="password"}</legend>
<table>
<tr>
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/ico_prefs_login.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="220">{lng p="newpassword"}:</td>
<td class="td2"><input type="password" name="newpw1" size="36" /></td>
</tr>
<tr>
<td class="td1">{lng p="newpassword"} ({lng p="repeat"}):</td>
<td class="td2"><input type="password" name="newpw2" size="36" /></td>
</tr>
</table>
</fieldset>
<p>
<div style="float:right" class="buttons">
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p> </div>
<div class="col-md-6">
<div class="mb-3 ">
<label class="form-label">{lng p="plugins"}</div>
<div>
{foreach from=$pluginList item=pluginTitle key=pluginName}
<label class="form-check">
<input class="form-check-input" type="checkbox" name="perms[plugins][{$pluginName}]" value="1" id="plugin_{$pluginName}"{if $admin.perms.plugins.$pluginName} checked="checked"{/if}>
<span class="form-check-label">{text value=$pluginTitle}</span>
</label>
{/foreach}
</div>
</div>
</div>
</fieldset>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</div>
</form> </form>

View file

@ -0,0 +1,270 @@
/* Input */
.form-label,
.col-form-label {
font-weight: normal;
}
.button,
.smallInput[type=submit] {
display: inline-block;
font-weight: 400;
line-height: 0.93;
color: #666666;
background-color: #ffffff;
border: 1px solid #666666;
text-align: center;
text-decoration: none;
vertical-align: middle;
cursor: pointer;
-webkit-user-select: none;
-moz-user-select: none;
user-select: none;
padding: 0.25rem 0.5rem;
font-size: 0.875rem;
border-radius: 0.1rem;
}
.smallInput[type=submit] {
font-weight: 300;
font-size: 0.58rem;
}
.button:disabled {
color: #fff;
background-color: #0d6efd;
border-color: #0d6efd;
}
.button:focus {
color: #fff;
background-color: #0b5ed7;
border-color: #0a58ca;
box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);
}
/* Fieldset */
fieldset {
margin: 0px 10px 8px 0px;
padding: 8px;
border-top: 1px solid #e6e7e9;
margin-bottom: 1em;
}
fieldset legend {
float: none;
width: auto;
padding: 3px 10px 4px 10px;
font-size: 0.8rem;
border: 1px solid #e6e7e9;
}
fieldset.uncollapsed legend:before {
font-family: FontAwesome;
content: "\f078";
padding-right: 2px;
color: #666;
}
fieldset.collapsed legend:before {
font-family: FontAwesome;
content: "\f054";
padding-left: 3px;
padding-right: 3px;
color: #666;
}
fieldset legend a {
text-decoration: none;
}
fieldset.collapsed {
border-bottom: 0 none;
border-right: 1px solid rgba(255, 255, 255, 0);
border-left: 1px solid rgba(255, 255, 255, 0);
padding-bottom: 0;
margin-bottom: 0;
}
fieldset.collapsed .content {
display: none;
}
/* Tabellen */
.list {
width: 100%;
margin-bottom: 1rem;
color: #1d273b;
vertical-align: top;
border: 1px solid #e6e7e9;
}
.list th {
color: #616876;
background: #f8fafc;
font-size: 0.625rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.04em;
line-height: 1rem;
color: #616876;
padding: 0.5rem;
white-space: nowrap;
border-bottom: 1px solid #e6e7e9;
}
.list th a {
color: #333;
text-decoration: none;
}
.list th a:hover {
color: #666;
text-decoration: none;
}
.list td {
text-align: left;
vertical-align: top;
padding: 3px;
padding-left: 6px;
border-right: 1px dotted #e6e7e9;
}
.list td img {
min-width: 16px;
}
.list td input[type=checkbox] {
margin-top: 4px;
}
.list .td1 {
background-color: transparent;
font-weight: normal;
border-bottom: 0px;
}
.list .td2 {
background-color: #edeff2;
font-weight: normal;
border-bottom: 0px;
}
.list .td1_dl {
border-top: 3px double #e6e7e9;
background-color: #FFFFFF;
}
.list .td2_dl {
border-top: 3px double #e6e7e9;
background-color: #F1F5FA;
}
.list .footer {
color: #616876;
background: #f8fafc;
font-size: 0.625rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.04em;
line-height: 1rem;
color: #616876;
padding: 0.5rem;
white-space: nowrap;
border-bottom: 1px solid #e6e7e9;
}
.list .footer a {
color: #333;
text-decoration: none;
}
.list .footer a:hover {
color: #666;
text-decoration: none;
}
.tableSubHead td {
background-color: #EEE;
box-shadow: inset 0px 1px 0 #FFF;
border-top: 1px solid #e6e7e9;
border-bottom: 1px solid #e6e7e9;
border-left: 0 none;
border-right: 0 none;
}
/**
* Dashboard
*/
.dragTable {
width: 100%;
}
.dragTableColumn {
vertical-align: top;
padding: 10px;
border-left: 1px solid #efefef;
}
.dragItem {
border-spacing: 0px;
border-collapse: collapse;
border: 1px solid #DDDDDD;
background-color: #FFFFFF;
border-radius: 5px;
}
.dragBar {
font-weight: normal;
padding: 4px 5px;
vertical-align: middle;
border-bottom: 1px solid #DDDDDD;
cursor: default;
border-radius-topleft: 5px;
}
.dragBar A {
cursor: hand;
cursor: pointer;
}
.dragTargetInactive {
}
.dragTargetActive {
border: 2px dashed #999999;
}
/**
* Stats
*/
.statsTable {
width: 100%;
margin-bottom: 1rem;
color: #1d273b;
vertical-align: top;
border: 1px solid #e6e7e9;
}
.statsTable th {
color: #616876;
background: #f8fafc;
font-size: 0.625rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.04em;
line-height: 1rem;
color: #616876;
padding: 0.5rem;
white-space: nowrap;
border-bottom: 1px solid #e6e7e9;
}
.statsTable .yScale {
border-right:1px solid #A0A0A0;
}
.statsTable .yScale div {
height: 24px;
font-size: 9px;
text-align: right;
}
.statsTable .bar {
text-align: center;
background-image: url(../images/stats_grid.gif);
background-position: 0px 8px;
vertical-align: bottom;
}
.statsTable .bar div {
margin-left: auto;
margin-right: auto;
box-shadow: 0px 0px 3px #AAA;
background: #eff0f1;
width: 17px;
}
.statsTable .xLines {
height: 3px;
border-top: 1px solid #A0A0A0;
border-left: 1px solid #A0A0A0;
border-right: 1px solid #A0A0A0;
}
.statsTable .xScale r {
text-align: center;
font-size: 9px;
}

File diff suppressed because it is too large Load diff

14
src/admin/templates/css/tabler.min.css vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -1,33 +1,24 @@
<form action="groups.php?do=realDelete&sid={$sid}" method="post"> <form action="groups.php?do=realDelete&sid={$sid}" method="post">
<fieldset> <fieldset>
<legend>{lng p="deletegroup"}</legend> <legend>{lng p="deletegroup"}</legend>
{lng p="groupdeletedesc"} {lng p="groupdeletedesc"}
<p>
<div>
<table>
{foreach from=$groupsToDelete item=dGroupTitle key=dGroupID} {foreach from=$groupsToDelete item=dGroupTitle key=dGroupID}
<tr> <div class="mb-3 row">
<td>{text value=$dGroupTitle}</td> <label class="col-sm-4 col-form-label">{text value=$dGroupTitle}</label>
<td><b>&nbsp;&raquo;&nbsp;</b></td> <div class="col-sm-8">
<td> <select name="groups[{$dGroupID}]" class="form-select">
<select name="groups[{$dGroupID}]">
{foreach from=$groups key=groupID item=groupTitle} {foreach from=$groups key=groupID item=groupTitle}
<option value="{$groupID}">{text value=$groupTitle}</option> <option value="{$groupID}">{text value=$groupTitle}</option>
{/foreach} {/foreach}
</select> </select>
</td> </div>
</tr> </div>
{/foreach} {/foreach}
</table> </fieldset>
</div>
</p>
</fieldset>
<p> <div class="text-end">
<div style="float:right" class="buttons"> <input class="btn btn-primary" type="submit" value="{lng p="move"} &amp; {lng p="delete"}" />
<input class="button" type="submit" value=" {lng p="move"} &amp; {lng p="delete"} " />
</div> </div>
</p>
</form> </form>

View file

@ -1,296 +1,597 @@
<form method="post" action="groups.php?{if $create}action=create&create=true{else}do=edit&id={$group.id}&save=true{/if}&sid={$sid}" onsubmit="spin(this)"> <form method="post" action="groups.php?{if $create}action=create&create=true{else}do=edit&id={$group.id}&save=true{/if}&sid={$sid}" onsubmit="spin(this)">
<table width="100%" cellspacing="2" cellpadding="0"> <div class="row">
<tr> <div class="col-md-6">
<td valign="top" width="50%">
<fieldset> <fieldset>
<legend>{lng p="common"}</legend> <legend>{lng p="common"}</legend>
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="title"}</label>
<td class="td1" width="160">{lng p="title"}:</td> <div class="col-sm-8">
<td class="td2"><input type="text" name="titel" value="{if isset($group.titel)}{text value=$group.titel allowEmpty=true}{/if}" style="width:85%;" /></td> <input type="text" class="form-control" name="titel" value="{if isset($group.titel)}{text value=$group.titel allowEmpty=true}{/if}" placeholder="{lng p="title"}">
</tr> </div>
<tr> </div>
<td class="td1">{lng p="htmlview"}?</td> <div class="mb-3 row">
<td class="td2"><input type="checkbox" name="soforthtml"{if $group.soforthtml=='yes'} checked="checked"{/if} /></td> <label class="col-sm-4 col-form-check-label">{lng p="htmlview"}</label>
</tr> <div class="col-sm-8">
<tr> <label class="form-check">
<td class="td1">{lng p="monthasset"}:</td> <input class="form-check-input" type="checkbox" name="soforthtml"{if $group.soforthtml=='yes'} checked="checked"{/if}>
<td class="td2"><input type="text" name="sms_monat" value="{$group.sms_monat}" size="8" /> {lng p="credits"}</td> </label>
</tr> </div>
</table> </div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="monthasset"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<input type="text" class="form-control" name="sms_monat" value="{$group.sms_monat}" placeholder="{lng p="monthasset"}">
<span class="input-group-text">{lng p="credits"}</span>
</div>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="storage"}</legend> <legend>{lng p="storage"}</legend>
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="email"}</label>
<td class="td1" width="160">{lng p="email"}:</td> <div class="col-sm-8">
<td class="td2"><input type="text" name="storage" value="{$group.storage/1024/1024}" size="8" /> MB</td> <div class="input-group mb-2">
</tr> <input type="text" class="form-control" name="storage" value="{$group.storage/1024/1024}" placeholder="{lng p="email"}">
<tr> <span class="input-group-text">MB</span>
<td class="td1">{lng p="webdisk"}:</td> </div>
<td class="td2"><input type="text" name="webdisk" value="{$group.webdisk/1024/1024}" size="8" /> MB</td> </div>
</tr> </div>
</table> <div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="webdisk"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<input type="text" class="form-control" name="webdisk" value="{$group.webdisk/1024/1024}" placeholder="{lng p="webdisk"}">
<span class="input-group-text">MB</span>
</div>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="limits"}</legend> <legend>{lng p="limits"}</legend>
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="emailin"}</label>
<td class="td1" width="160">{lng p="emailin"}:</td> <div class="col-sm-8">
<td class="td2"><input type="text" name="maxsize" value="{$group.maxsize/1024}" size="8" /> KB</td> <div class="input-group mb-2">
</tr> <input type="text" class="form-control" name="maxsize" value="{$group.maxsize/1024}" placeholder="{lng p="emailin"}">
<tr> <span class="input-group-text">KB</span>
<td class="td1">{lng p="emailout"}:</td> </div>
<td class="td2"><input type="text" name="anlagen" value="{$group.anlagen/1024}" size="8" /> KB</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="wdtraffic"}:</td> <label class="col-sm-4 col-form-label">{lng p="emailout"}</label>
<td class="td2"><input type="text" name="traffic" value="{if $group.traffic>0}{$group.traffic/1024/1024}{else}{$group.traffic}{/if}" size="8" /> MB</td> <div class="col-sm-8">
</tr> <div class="input-group mb-2">
<tr> <input type="text" class="form-control" name="anlagen" value="{$group.anlagen/1024}" placeholder="{lng p="emailout"}">
<td class="td1">{lng p="wdspeed"}:</td> <span class="input-group-text">KB</span>
<td class="td2"><input type="text" name="wd_member_kbs" value="{$group.wd_member_kbs}" size="8" /> KB/s</td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="sharespeed"}:</td> <div class="mb-3 row">
<td class="td2"><input type="text" name="wd_open_kbs" value="{$group.wd_open_kbs}" size="8" /> KB/s</td> <label class="col-sm-4 col-form-label">{lng p="wdtraffic"}</label>
</tr> <div class="col-sm-8">
<tr> <div class="input-group mb-2">
<td class="td1" width="220">{lng p="maxrecps"}:</td> <input type="text" class="form-control" name="traffic" value="{if $group.traffic>0}{$group.traffic/1024/1024}{else}{$group.traffic}{/if}" placeholder="{lng p="wdtraffic"}">
<td class="td2"><input type="text" name="max_recps" value="{$group.max_recps}" size="8" /></td> <span class="input-group-text">MB</span>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="sendlimit"}:</td> </div>
<td class="td2"><input type="text" name="send_limit_count" value="{$group.send_limit_count}" size="8" /> <div class="mb-3 row">
{lng p="emailsin"} <label class="col-sm-4 col-form-label">{lng p="wdspeed"}</label>
<input type="text" name="send_limit_time" value="{$group.send_limit_time}" size="8" /> <div class="col-sm-8">
{lng p="minutes"}</td> <div class="input-group mb-2">
</tr> <input type="text" class="form-control" name="wd_member_kbs" value="{$group.wd_member_kbs}" placeholder="{lng p="wdspeed"}">
<tr> <span class="input-group-text">KB/s</span>
<td class="td1">{lng p="ownpop3"}:</td> </div>
<td class="td2"><input type="text" name="ownpop3" value="{$group.ownpop3}" size="8" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="ownpop3interval"}:</td> <label class="col-sm-4 col-form-label">{lng p="sharespeed"}</label>
<td class="td2"><input type="text" name="ownpop3_interval" value="{$group.ownpop3_interval}" size="8" /> {lng p="seconds"}</td> <div class="col-sm-8">
</tr> <div class="input-group mb-2">
<tr> <input type="text" class="form-control" name="wd_open_kbs" value="{$group.wd_open_kbs}" placeholder="{lng p="sharespeed"}">
<td class="td1">{lng p="selfpop3_check"}?</td> <span class="input-group-text">KB/s</span>
<td class="td2"><input type="checkbox" name="selfpop3_check"{if $group.selfpop3_check=='yes'} checked="checked"{/if} /></td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="aliases"}:</td> <div class="mb-3 row">
<td class="td2"><input type="text" name="aliase" value="{$group.aliase}" size="8" /></td> <label class="col-sm-4 col-form-label">{lng p="maxrecps"}</label>
</tr> <div class="col-sm-8">
<tr> <input type="text" class="form-control" name="max_recps" value="{$group.max_recps}" placeholder="{lng p="maxrecps"}">
<td class="td1">{lng p="smspre"}:</td> </div>
<td class="td2"> </div>
<textarea style="width:100%;height:80px;" name="sms_pre">{text value=$group.sms_pre allowEmpty=true}</textarea> <div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="sendlimit"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<input type="text" class="form-control" name="send_limit_count" value="{$group.send_limit_count}" placeholder="{lng p="emailsin"}">
<span class="input-group-text">{lng p="emailsin"}</span>
<input type="text" class="form-control" name="send_limit_time" value="{$group.send_limit_time}" placeholder="{lng p="minutes"}">
<span class="input-group-text">{lng p="minutes"}</span>
</div>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="ownpop3"}</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="ownpop3" value="{$group.ownpop3}" placeholder="{lng p="ownpop3"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="ownpop3interval"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<input type="text" class="form-control" name="ownpop3_interval" value="{$group.ownpop3_interval}" placeholder="{lng p="ownpop3interval"}">
<span class="input-group-text">{lng p="seconds"}</span>
</div>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="selfpop3_check"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="selfpop3_check"{if $group.selfpop3_check=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="aliases"}</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="aliase" value="{$group.aliase}" placeholder="{lng p="aliases"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="smspre"}</label>
<div class="col-sm-8">
<textarea class="form-control" name="sms_pre" placeholder="{lng p="smspre"}">{text value=$group.sms_pre allowEmpty=true}</textarea>
<small>{lng p="sepby"}</small> <small>{lng p="sepby"}</small>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="smsvalidation"}?</td> <label class="col-sm-4 col-form-check-label">{lng p="smsvalidation"}</label>
<td class="td2"><input type="checkbox" name="smsvalidation"{if $group.smsvalidation=='yes'} checked="checked"{/if} /></td> <div class="col-sm-8">
</tr> <label class="form-check">
<tr> <input class="form-check-input" type="checkbox" name="smsvalidation"{if $group.smsvalidation=='yes'} checked="checked"{/if}>
<td class="td1">{lng p="allownewsoptout"}?</td> </label>
<td class="td2"><input name="allow_newsletter_optout"{if $group.allow_newsletter_optout=='yes'} checked="checked"{/if} type="checkbox" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="mail_send_code"}?</td> <label class="col-sm-4 col-form-check-label">{lng p="allownewsoptout"}</label>
<td class="td2"><input name="mail_send_code"{if $group.mail_send_code=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="col-sm-8">
</tr> <label class="form-check">
<tr> <input class="form-check-input" type="checkbox" name="allow_newsletter_optout"{if $group.allow_newsletter_optout=='yes'} checked="checked"{/if}>
<td class="td1">{lng p="sms_send_code"}?</td> </label>
<td class="td2"><input name="sms_send_code"{if $group.sms_send_code=='yes'} checked="checked"{/if} type="checkbox" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="abuseprotect"}?</td> <label class="col-sm-4 col-form-check-label">{lng p="mail_send_code"}</label>
<td class="td2"><input name="abuseprotect"{if $group.abuseprotect=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="col-sm-8">
</tr> <label class="form-check">
</table> <input class="form-check-input" type="checkbox" name="mail_send_code"{if $group.mail_send_code=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="sms_send_code"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="sms_send_code"{if $group.sms_send_code=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="abuseprotect"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="abuseprotect"{if $group.abuseprotect=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</fieldset> </fieldset>
</td> </div>
<td valign="top"> <div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="services"}</legend> <legend>{lng p="services"}</legend>
<table width="100%"> <div class="row">
<tr> <div class="col-md-6">
<td class="td1" width="150">{lng p="autoresponder"}?</td> <div class="row">
<td class="td2"><input type="checkbox" name="responder"{if $group.responder=='yes'} checked="checked"{/if} /></td> <label class="col-sm-6 col-form-check-label">{lng p="autoresponder"}</label>
<td class="td1" width="150">{lng p="forward"}?</td> <div class="col-sm-6">
<td class="td2"><input type="checkbox" name="forward"{if $group.forward=='yes'} checked="checked"{/if} /></td> <label class="form-check">
</tr> <input class="form-check-input" type="checkbox" name="responder"{if $group.responder=='yes'} checked="checked"{/if}>
<tr> </label>
<td class="td1">{lng p="ads"}?</td> </div>
<td class="td2"><input type="checkbox" name="ads"{if $group.ads=='yes'} checked="checked"{/if} /></td> </div>
<td class="td2" colspan="2">&nbsp;</td> </div>
</tr> <div class="col-md-6">
<tr> <div class="row">
<td class="td1">{lng p="mail2sms"}?</td> <label class="col-sm-6 col-form-check-label">{lng p="forward"}</label>
<td class="td2"><input type="checkbox" name="mail2sms"{if $group.mail2sms=='yes'} checked="checked"{/if} /></td> <div class="col-sm-6">
<td class="td1">{lng p="ownfrom"}?</td> <label class="form-check">
<td class="td2"><input type="checkbox" name="sms_ownfrom"{if $group.sms_ownfrom=='yes'} checked="checked"{/if} /></td> <input class="form-check-input" type="checkbox" name="forward"{if $group.forward=='yes'} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="mobileaccess"}?</td> </div>
<td class="td2"><input type="checkbox" name="wap"{if $group.wap=='yes'} checked="checked"{/if} /></td> </div>
<td class="td1">{lng p="sync"}?</td> </div>
<td class="td2"><input type="checkbox" name="syncml"{if $group.syncml=='yes'} checked="checked"{/if} /></td> <div class="row">
</tr> <div class="col-md-6">
<tr> <div class="row">
<td class="td1">{lng p="wdshare"}?</td> <label class="col-sm-6 col-form-check-label">{lng p="ads"}</label>
<td class="td2"><input type="checkbox" name="share"{if $group.share=='yes'} checked="checked"{/if} /></td> <div class="col-sm-6">
<td class="td1">{lng p="webdav"}?</td> <label class="form-check">
<td class="td2"><input type="checkbox" name="webdav"{if !$davSupport} disabled="disabled"{else}{if $group.webdav=='yes'} checked="checked"{/if}{/if} /></td> <input class="form-check-input" type="checkbox" name="ads"{if $group.ads=='yes'} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="organizerdav"}?</td> </div>
<td class="td2"><input type="checkbox" name="organizerdav"{if !$davSupport} disabled="disabled"{else}{if $group.organizerdav=='yes'} checked="checked"{/if}{/if} /></td> </div>
<td colspan="2">&nbsp;</td> <div class="col-md-6">
</tr> &nbsp;
<tr> </div>
<td class="td1">{lng p="organizer"}?</td> </div>
<td class="td2"><input type="checkbox" name="organizer"{if $group.organizer=='yes'} checked="checked"{/if} /></td> <div class="row">
<td colspan="2">&nbsp;</td> <div class="col-md-6">
</tr> <div class="row">
<tr> <label class="col-sm-6 col-form-check-label">{lng p="mail2sms"}</label>
<td class="td1">{lng p="smtp"}?</td> <div class="col-sm-6">
<td class="td2"><input type="checkbox" name="smtp"{if $group.smtp=='yes'} checked="checked"{/if} /></td> <label class="form-check">
<td class="td1">{lng p="pop3"}?</td> <input class="form-check-input" type="checkbox" name="mail2sms"{if $group.mail2sms=='yes'} checked="checked"{/if}>
<td class="td2"><input type="checkbox" name="pop3"{if $group.pop3=='yes'} checked="checked"{/if} /></td> </label>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="imap"}?</td> </div>
<td class="td2"><input type="checkbox" name="imap"{if $group.imap=='yes'} checked="checked"{/if} /></td> <div class="col-md-6">
<td colspan="2">&nbsp;</td> <div class="row">
</tr> <label class="col-sm-6 col-form-check-label">{lng p="ownfrom"}</label>
<tr> <div class="col-sm-6">
<td class="td1">{lng p="smime"}?</td> <label class="form-check">
<td class="td2"><input type="checkbox" name="smime"{if !$smimeSupport} disabled="disabled"{else}{if $group.smime=='yes'} checked="checked"{/if}{/if} /></td> <input class="form-check-input" type="checkbox" name="sms_ownfrom"{if $group.sms_ownfrom=='yes'} checked="checked"{/if}>
<td class="td1">{lng p="issue_certificates"}?</td> </label>
<td class="td2"><input type="checkbox" name="issue_certificates"{if !$smimeSupport} disabled="disabled"{else}{if $group.issue_certificates=='yes'} checked="checked"{/if}{/if} /></td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="upload_certificates"}?</td> </div>
<td class="td2"><input type="checkbox" name="upload_certificates"{if !$smimeSupport} disabled="disabled"{else}{if $group.upload_certificates=='yes'} checked="checked"{/if}{/if} /></td> <div class="row">
<td class="td1">{lng p="sender_aliases"}?</td> <div class="col-md-6">
<td class="td2"><input type="checkbox" name="sender_aliases"{if $group.sender_aliases=='yes'} checked="checked"{/if} /></td> <div class="row">
</tr> <label class="col-sm-6 col-form-check-label">{lng p="mobileaccess"}</label>
<tr> <div class="col-sm-6">
<td class="td1">{lng p="ftsearch"}?</td> <label class="form-check">
<td class="td2"><input type="checkbox" name="ftsearch"{if !$ftsSupport} disabled="disabled"{else}{if $group.ftsearch=='yes'} checked="checked"{/if}{/if} /></td> <input class="form-check-input" type="checkbox" name="wap"{if $group.wap=='yes'} checked="checked"{/if}>
<td class="td1">{lng p="notifications"}?</td> </label>
<td class="td2"><input type="checkbox" name="notifications"{if $group.notifications=='yes'} checked="checked"{/if} /></td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="deliverystatus"}?</td> <div class="col-md-6">
<td class="td2"><input type="checkbox" name="maildeliverystatus"{if $group.maildeliverystatus=='yes'} checked="checked"{/if} /></td> <div class="row">
<td class="td1">{lng p="auto_save_drafts"}?</td> <label class="col-sm-6 col-form-check-label">{lng p="sync"}</label>
<td class="td2"><input type="checkbox" name="auto_save_drafts"{if $group.auto_save_drafts=='yes'} checked="checked"{/if} /></td> <div class="col-sm-6">
</tr> <label class="form-check">
</table> <input class="form-check-input" type="checkbox" name="syncml"{if $group.syncml=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="wdshare"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="share"{if $group.share=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="webdav"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="webdav"{if !$davSupport} disabled="disabled"{else}{if $group.webdav=='yes'} checked="checked"{/if}{/if}>
</label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="organizerdav"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="organizerdav"{if !$davSupport} disabled="disabled"{else}{if $group.organizerdav=='yes'} checked="checked"{/if}{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
&nbsp;
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="organizer"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="organizer"{if $group.organizer=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
&nbsp;
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="smtp"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="smtp"{if $group.smtp=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="pop3"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="pop3"{if $group.pop3=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="imap"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="imap"{if $group.imap=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
&nbsp;
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="smime"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="smime"{if !$smimeSupport} disabled="disabled"{else}{if $group.smime=='yes'} checked="checked"{/if}{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="issue_certificates"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="issue_certificates"{if !$smimeSupport} disabled="disabled"{else}{if $group.issue_certificates=='yes'} checked="checked"{/if}{/if}>
</label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="upload_certificates"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="upload_certificates"{if !$smimeSupport} disabled="disabled"{else}{if $group.upload_certificates=='yes'} checked="checked"{/if}{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="sender_aliases"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="sender_aliases"{if $group.sender_aliases=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="ftsearch"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="ftsearch"{if !$ftsSupport} disabled="disabled"{else}{if $group.ftsearch=='yes'} checked="checked"{/if}{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="notifications"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="notifications"{if $group.notifications=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="deliverystatus"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="maildeliverystatus"{if $group.maildeliverystatus=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="auto_save_drafts"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="auto_save_drafts"{if $group.auto_save_drafts=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="bmtoolbox"}</legend> <legend>{lng p="bmtoolbox"}</legend>
<table width="100%"> <div class="row">
<tr> <div class="col-md-6">
<td class="td1" width="150">{lng p="tbx_enable"}?</td> <div class="row">
<td class="td2"><input type="checkbox" name="checker"{if $group.checker=='yes'} checked="checked"{/if} /></td> <label class="col-sm-6 col-form-check-label">{lng p="tbx_enable"}</label>
<td class="td2" width="150">&nbsp;</td> <div class="col-sm-6">
<td class="td2">&nbsp;</td> <label class="form-check">
</tr> <input class="form-check-input" type="checkbox" name="checker"{if $group.checker=='yes'} checked="checked"{/if}>
<tr> </label>
<td class="td1">{lng p="tbx_webdisk"}?</td> </div>
<td class="td2"><input type="checkbox" name="tbx_webdisk"{if $group.tbx_webdisk=='yes'} checked="checked"{/if} /></td> </div>
<td class="td1">{lng p="tbx_smsmanager"}?</td> </div>
<td class="td2"><input type="checkbox" name="tbx_smsmanager"{if $group.tbx_smsmanager=='yes'} checked="checked"{/if} /></td> <div class="col-md-6">
</tr> &nbsp;
</table> </div>
</div>
<div class="row">
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="tbx_webdisk"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="tbx_webdisk"{if $group.tbx_webdisk=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="row">
<label class="col-sm-6 col-form-check-label">{lng p="tbx_smsmanager"}</label>
<div class="col-sm-6">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="tbx_smsmanager"{if $group.tbx_smsmanager=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="aliasdomains"}</legend> <legend>{lng p="aliasdomains"}</legend>
<textarea style="width:100%;height:80px;" name="saliase">{text value=$group.saliase allowEmpty=true}</textarea> <div class="mb-3 row">
<div class="col-sm-12">
<textarea class="form-control" name="saliase" placeholder="{lng p="aliasdomains"}">{text value=$group.saliase allowEmpty=true}</textarea>
<small>{lng p="sepby"}</small> <small>{lng p="sepby"}</small>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="misc"}</legend> <legend>{lng p="misc"}</legend>
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="creditprice"}</label>
<td class="td1" width="160">{lng p="creditprice"}:</td> <div class="col-sm-8">
<td class="td2"><input type="text" name="sms_price_per_credit" value="{$group.sms_price_per_credit}" size="6" /> (1/100 {$currency})</td> <div class="input-group mb-2">
</tr> <input type="text" class="form-control" name="sms_price_per_credit" value="{$group.sms_price_per_credit}" placeholder="{lng p="creditprice"}">
<tr> <span class="input-group-text">(1/100 {$currency})</span>
<td class="td1" width="160">{lng p="smsfrom"}:</td> </div>
<td class="td2"><input type="text" name="sms_from" value="{if isset($group.sms_from)}{text value=$group.sms_from allowEmpty=true}{/if}" style="width:85%;" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="smssig"}:</td> <label class="col-sm-4 col-form-label">{lng p="smsfrom"}</label>
<td class="td2"><input type="text" name="sms_sig" value="{if isset($group.sms_sig)}{text value=$group.sms_sig allowEmpty=true}{/if}" style="width:85%;" /></td> <div class="col-sm-8">
</tr> <input type="text" class="form-control" name="sms_from" value="{if isset($group.sms_from)}{text value=$group.sms_from allowEmpty=true}{/if}" placeholder="{lng p="smsfrom"}">
<tr> </div>
<td class="td1">{lng p="mailsig"}:</td> </div>
<td class="td2"><textarea style="width:100%;height:80px;" name="signatur">{text value=$group.signatur allowEmpty=true}</textarea></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="smssig"}</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="sms_sig" value="{if isset($group.sms_sig)}{text value=$group.sms_sig allowEmpty=true}{/if}" placeholder="{lng p="smssig"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="mailsig"}</label>
<div class="col-sm-8">
<textarea class="form-control" name="signatur" placeholder="{lng p="mailsig"}">{text value=$group.signatur allowEmpty=true}</textarea>
</div>
</div>
{foreach from=$groupOptions key=fieldKey item=fieldInfo} {foreach from=$groupOptions key=fieldKey item=fieldInfo}
<tr> <div class="mb-3 row">
<td class="td1">{$fieldInfo.desc}</td> <label class="col-sm-4 col-form-label">{$fieldInfo.desc}</label>
<td class="td2"> <div class="col-sm-8">
{if $fieldInfo.type==16} {if $fieldInfo.type==16}
<textarea style="width:100%;height:80px;" name="{$fieldKey}">{text value=$fieldInfo.value allowEmpty=true}</textarea></td> <textarea class="form-control" name="{$fieldKey}">{text value=$fieldInfo.value allowEmpty=true}</textarea>
{elseif $fieldInfo.type==8} {elseif $fieldInfo.type==8}
{foreach from=$fieldInfo.options item=optionValue key=optionKey} {foreach from=$fieldInfo.options item=optionValue key=optionKey}
<input type="radio" name="{$fieldKey}" id="{$fieldKey}_{$optionKey}" value="{$optionKey}"{if $fieldInfo.value==$optionKey} checked="checked"{/if} /> <div class="form-check">
<label for="{$fieldKey}_{$optionKey}">{text value=$optionValue}</label> <input type="radio" class="form-check-input" name="{$fieldKey}" id="{$fieldKey}_{$optionKey}" value="{$optionKey}"{if $fieldInfo.value==$optionKey} checked="checked"{/if} />
<span class="form-check-label">{text value=$optionValue}</span>
</div>
{/foreach} {/foreach}
{elseif $fieldInfo.type==4} {elseif $fieldInfo.type==4}
<select name="{$fieldKey}"> <select name="{$fieldKey}" class="form-select">
{foreach from=$fieldInfo.options item=optionValue key=optionKey} {foreach from=$fieldInfo.options item=optionValue key=optionKey}
<option value="{$optionKey}"{if $fieldInfo.value==$optionKey} selected="selected"{/if}>{text value=$optionValue}</option> <option value="{$optionKey}"{if $fieldInfo.value==$optionKey} selected="selected"{/if}>{text value=$optionValue}</option>
{/foreach} {/foreach}
</select> </select>
{elseif $fieldInfo.type==2} {elseif $fieldInfo.type==2}
<input type="checkbox" name="{$fieldKey}" value="1"{if $fieldInfo.value} checked="checked"{/if} /> <div class="form-check">
<input type="checkbox" class="form-check-input" name="{$fieldKey}" value="1"{if $fieldInfo.value} checked="checked"{/if} />
</div>
{elseif $fieldInfo.type==1} {elseif $fieldInfo.type==1}
<input type="text" style="width:85%;" name="{$fieldKey}" value="{if isset($fieldInfo.value)}{text value=$fieldInfo.value allowEmpty=true}{/if}" /> <input type="text" class="form-control" name="{$fieldKey}" value="{if isset($fieldInfo.value)}{text value=$fieldInfo.value allowEmpty=true}{/if}" />
{/if} {/if}
</tr> </div>
</div>
{/foreach} {/foreach}
</table>
</fieldset> </fieldset>
</td> </div>
</tr> </div>
</table>
<p> <div class="row">
{if !$create}<div style="float:left" class="buttons"> <div class="col-md-6">
&nbsp;{lng p="action"}: <div style="float: left;">{lng p="action"}:&nbsp;</div>
<select name="groupAction" id="groupAction"> <div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="groupAction" id="groupAction" class="form-select form-select-sm">
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="newsletter.php?toGroup={$group.id}&sid={$sid}">{lng p="sendmail"}</option> <option value="newsletter.php?toGroup={$group.id}&sid={$sid}">{lng p="sendmail"}</option>
<option value="groups.php?singleAction=delete&singleID={$group.id}&sid={$sid}">{lng p="delete"}</option> <option value="groups.php?singleAction=delete&singleID={$group.id}&sid={$sid}">{lng p="delete"}</option>
</optgroup> </optgroup>
</select> </select>
<input type="button" name="executeMassAction" value="{lng p="ok"}" onclick="executeAction('groupAction');" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div>
<div class="col-md-6 text-end">
<input class="btn btn-primary" type="submit" value=" {lng p="save"} " />
</div> </div>
<div style="float:left">
<input class="button" type="button" value=" {lng p="ok"} " onclick="executeAction('groupAction');" />
</div>{/if}
<div style="float:right" class="buttons">
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p>
</form> </form>
<br /><br />

View file

@ -2,43 +2,49 @@
<legend>{lng p="groups"}</legend> <legend>{lng p="groups"}</legend>
<form name="f1" action="groups.php?sid={$sid}" method="post"> <form name="f1" action="groups.php?sid={$sid}" method="post">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th width="20">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'group_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'group_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="title"}</th> <th>{lng p="title"}</th>
<th width="70">&nbsp;</th> <th width="70">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$groups item=group} {foreach from=$groups item=group}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/ico_group{if $group.default}_default{/if}.png" border="0" width="16" height="16" alt="" /></td> <td align="center"><i class="fa-solid fa-user-group{if $group.default} text-green{/if}"></i></td>
<td align="center"><input type="checkbox" name="group_{$group.id}" /></td> <td align="center"><input type="checkbox" name="group_{$group.id}" /></td>
<td><a href="groups.php?do=edit&id={$group.id}&sid={$sid}">{text value=$group.titel}</a><br /><small><a href="users.php?onlyGroup={$group.id}&sid={$sid}">{$group.members} {lng p="members"}</a></small></td> <td><a href="groups.php?do=edit&id={$group.id}&sid={$sid}">{text value=$group.titel}</a><br /><small><a href="users.php?onlyGroup={$group.id}&sid={$sid}">{$group.members} {lng p="members"}</a></small></td>
<td> <td class="text-nowrap">
<a href="groups.php?do=edit&id={$group.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
{if !$group.default}<a href="groups.php?do=delete&id={$group.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a>{/if} <a href="groups.php?do=edit&id={$group.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
{if !$group.default}<a href="groups.php?do=delete&id={$group.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>{/if}
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="4"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 741 B

After

Width:  |  Height:  |  Size: 3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 9.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

View file

@ -49,7 +49,7 @@ function toggleFieldset(elem)
{ {
while(elem) while(elem)
{ {
if(typeof(elem.tagName) != 'undefined' && elem.tagName.toUpperCase() == 'FIELDSET') if(typeof(elem.tagName) != 'undefined' && elem.tagName.toUpperCase() == 'fieldset')
break; break;
elem = elem.parentNode; elem = elem.parentNode;
} }
@ -1350,14 +1350,14 @@ function _activatePayment(e)
if(text.substring(0, 3) == 'OK:') if(text.substring(0, 3) == 'OK:')
{ {
EBID('activationResult').style.color = 'darkgreen'; EBID('activationResult').classList.add("alert", "alert-success");
EBID('activationResult').innerHTML = text.substring(3); EBID('activationResult').innerHTML = text.substring(3);
EBID('vkCode').value = 'VK-'; EBID('vkCode').value = 'VK-';
EBID('amount').value = ''; EBID('amount').value = '';
} }
else else
{ {
EBID('activationResult').style.color = 'red'; EBID('activationResult').classList.add("alert", "alert-danger");
EBID('activationResult').innerHTML = text.substring(6); EBID('activationResult').innerHTML = text.substring(6);
} }

View file

@ -1,14 +0,0 @@
function insGate(titel, get, ok, get74)
{
var v74OrLater = (window.self == window.top);
document.getElementById('titel').value = titel;
document.getElementById('getstring').value = v74OrLater && get74.length > 0 ? get74 : get;
document.getElementById('success').value = ok;
}
document.write('<ul>');
document.write(' <li><a href="#" onclick="insGate(\'Yomega.info\',\'http://gateway.yomega.info/textsms2.py?user=%%user%%&pass=%%passwort%%&from=%%from%%&to=%%to%%&text=%%msg%%&what=textsms\',\'5002\',\'\');">Yomega.info</a></li>');
document.write(' <li><a href="#" onclick="insGate(\'SMSkaufen.de\',\'http://gateway.smskaufen.de/?id=%%user%%&pw=%%passwort%%&type=%%typ%%&empfaenger=%%to%%&absender=%%from%%&text=%%msg%%&reply_email=%%usermail%%&reply=1\',\'100\',\'\');alert(\'Wichtig: Nach dem Anlegen des Gateways muss mindestens ein SMS-Typ eingereichtet werden (unter Typen). Als Typ muss dabei eine SMS-Typ-Nummer von SMSkaufen angegeben werden (z.B. 2).\');">SMSkaufen.de</a></li>');
document.write(' <li><a href="#" onclick="insGate(\'smstrade.de\',\'http://gateway.smstrade.de/?key=%%passwort%%&message=%%msg%%&to=%%to%%&from=%%from%%&route=%%typ%%\',\'100\',\'\');alert(\'Wichtig: Geben Sie Ihren smstrade.de-Schnittstellen-Key bitte als Passwort ein und lassen Sie das Benutzer-Feld leer. Nach dem Anlegen des Gateways muss mindestens ein SMS-Typ eingerichtet werden (unter Typen). Als Typ kann dabei einer der folgenden Werte verwendet werden: basic, economy, gold, direct (entsprechen den Routen bei smstrade.de).\');">smstrade.de</a></li>');
document.write(' <li><a href="#" onclick="insGate(\'CM Telecom\',\'https://sgw01.cm.nl/gateway.ashx?producttoken=%%passwort%%&body=%%msg%%&to=%%to%%&from=%%from%%&reference=\',\'\',\'https://sgw01.cm.nl/gateway.ashx?producttoken=%%passwort%%&body=%%msg_utf8%%&to=%%to%%&from=%%from%%&reference=\');alert(\'Bitte geben Sie Ihren Product Token im Feld Passwort ein. Benutzer sowie Rückgabe-Wert können frei gelassen werden. Es muss weiterhin mindestens ein SMS-Typ angelegt werden. Das Typ-Feld kann dabei frei gelassen werden.\');">CM Telecom</a></li>');
document.write('</ul>');

File diff suppressed because it is too large Load diff

15
src/admin/templates/js/tabler.min.js vendored Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,19 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
:root, :host {
--fa-style-family-classic: 'Font Awesome 6 Free';
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Free'; }
@font-face {
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 400;
font-display: block;
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }
.far,
.fa-regular {
font-weight: 400; }

View file

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-weight:400}

View file

@ -0,0 +1,19 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
:root, :host {
--fa-style-family-classic: 'Font Awesome 6 Free';
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Free'; }
@font-face {
font-family: 'Font Awesome 6 Free';
font-style: normal;
font-weight: 900;
font-display: block;
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
.fas,
.fa-solid {
font-weight: 900; }

View file

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-weight:900}

View file

@ -0,0 +1,635 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
:root, :host {
--fa-font-solid: normal 900 1em/1 'Font Awesome 6 Solid';
--fa-font-regular: normal 400 1em/1 'Font Awesome 6 Regular';
--fa-font-light: normal 300 1em/1 'Font Awesome 6 Light';
--fa-font-thin: normal 100 1em/1 'Font Awesome 6 Thin';
--fa-font-duotone: normal 900 1em/1 'Font Awesome 6 Duotone';
--fa-font-sharp-solid: normal 900 1em/1 'Font Awesome 6 Sharp';
--fa-font-brands: normal 400 1em/1 'Font Awesome 6 Brands'; }
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box; }
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -.125em; }
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em; }
.svg-inline--fa.fa-xs {
vertical-align: 0em; }
.svg-inline--fa.fa-sm {
vertical-align: -0.07143em; }
.svg-inline--fa.fa-lg {
vertical-align: -0.2em; }
.svg-inline--fa.fa-xl {
vertical-align: -0.25em; }
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em; }
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto; }
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto; }
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em; }
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em); }
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0; }
.fa-layers-text, .fa-layers-counter {
display: inline-block;
position: absolute;
text-align: center; }
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -.125em;
width: 1em; }
.fa-layers svg.svg-inline--fa {
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-text {
left: 50%;
top: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
-webkit-transform-origin: center center;
transform-origin: center center; }
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
-webkit-transform: scale(var(--fa-counter-scale, 0.25));
transform: scale(var(--fa-counter-scale, 0.25));
-webkit-transform-origin: top right;
transform-origin: top right; }
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
-webkit-transform: scale(var(--fa-layers-scale, 0.25));
transform: scale(var(--fa-layers-scale, 0.25));
-webkit-transform-origin: bottom right;
transform-origin: bottom right; }
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
-webkit-transform: scale(var(--fa-layers-scale, 0.25));
transform: scale(var(--fa-layers-scale, 0.25));
-webkit-transform-origin: bottom left;
transform-origin: bottom left; }
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
-webkit-transform: scale(var(--fa-layers-scale, 0.25));
transform: scale(var(--fa-layers-scale, 0.25));
-webkit-transform-origin: top right;
transform-origin: top right; }
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
-webkit-transform: scale(var(--fa-layers-scale, 0.25));
transform: scale(var(--fa-layers-scale, 0.25));
-webkit-transform-origin: top left;
transform-origin: top left; }
.fa-1x {
font-size: 1em; }
.fa-2x {
font-size: 2em; }
.fa-3x {
font-size: 3em; }
.fa-4x {
font-size: 4em; }
.fa-5x {
font-size: 5em; }
.fa-6x {
font-size: 6em; }
.fa-7x {
font-size: 7em; }
.fa-8x {
font-size: 8em; }
.fa-9x {
font-size: 9em; }
.fa-10x {
font-size: 10em; }
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em; }
.fa-xs {
font-size: 0.75em;
line-height: 0.08333em;
vertical-align: 0.125em; }
.fa-sm {
font-size: 0.875em;
line-height: 0.07143em;
vertical-align: 0.05357em; }
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em; }
.fa-xl {
font-size: 1.5em;
line-height: 0.04167em;
vertical-align: -0.125em; }
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em; }
.fa-fw {
text-align: center;
width: 1.25em; }
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0; }
.fa-ul > li {
position: relative; }
.fa-li {
left: calc(var(--fa-li-width, 2em) * -1);
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit; }
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); }
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em); }
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em); }
.fa-beat {
-webkit-animation-name: fa-beat;
animation-name: fa-beat;
-webkit-animation-delay: var(--fa-animation-delay, 0s);
animation-delay: var(--fa-animation-delay, 0s);
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 1s);
animation-duration: var(--fa-animation-duration, 1s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
.fa-bounce {
-webkit-animation-name: fa-bounce;
animation-name: fa-bounce;
-webkit-animation-delay: var(--fa-animation-delay, 0s);
animation-delay: var(--fa-animation-delay, 0s);
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 1s);
animation-duration: var(--fa-animation-duration, 1s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1)); }
.fa-fade {
-webkit-animation-name: fa-fade;
animation-name: fa-fade;
-webkit-animation-delay: var(--fa-animation-delay, 0s);
animation-delay: var(--fa-animation-delay, 0s);
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 1s);
animation-duration: var(--fa-animation-duration, 1s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
.fa-beat-fade {
-webkit-animation-name: fa-beat-fade;
animation-name: fa-beat-fade;
-webkit-animation-delay: var(--fa-animation-delay, 0s);
animation-delay: var(--fa-animation-delay, 0s);
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 1s);
animation-duration: var(--fa-animation-duration, 1s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1)); }
.fa-flip {
-webkit-animation-name: fa-flip;
animation-name: fa-flip;
-webkit-animation-delay: var(--fa-animation-delay, 0s);
animation-delay: var(--fa-animation-delay, 0s);
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 1s);
animation-duration: var(--fa-animation-duration, 1s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);
animation-timing-function: var(--fa-animation-timing, ease-in-out); }
.fa-shake {
-webkit-animation-name: fa-shake;
animation-name: fa-shake;
-webkit-animation-delay: var(--fa-animation-delay, 0s);
animation-delay: var(--fa-animation-delay, 0s);
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 1s);
animation-duration: var(--fa-animation-duration, 1s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, linear);
animation-timing-function: var(--fa-animation-timing, linear); }
.fa-spin {
-webkit-animation-name: fa-spin;
animation-name: fa-spin;
-webkit-animation-delay: var(--fa-animation-delay, 0s);
animation-delay: var(--fa-animation-delay, 0s);
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 2s);
animation-duration: var(--fa-animation-duration, 2s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, linear);
animation-timing-function: var(--fa-animation-timing, linear); }
.fa-spin-reverse {
--fa-animation-direction: reverse; }
.fa-pulse,
.fa-spin-pulse {
-webkit-animation-name: fa-spin;
animation-name: fa-spin;
-webkit-animation-direction: var(--fa-animation-direction, normal);
animation-direction: var(--fa-animation-direction, normal);
-webkit-animation-duration: var(--fa-animation-duration, 1s);
animation-duration: var(--fa-animation-duration, 1s);
-webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
-webkit-animation-timing-function: var(--fa-animation-timing, steps(8));
animation-timing-function: var(--fa-animation-timing, steps(8)); }
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
-webkit-animation-delay: -1ms;
animation-delay: -1ms;
-webkit-animation-duration: 1ms;
animation-duration: 1ms;
-webkit-animation-iteration-count: 1;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s; } }
@-webkit-keyframes fa-beat {
0%, 90% {
-webkit-transform: scale(1);
transform: scale(1); }
45% {
-webkit-transform: scale(var(--fa-beat-scale, 1.25));
transform: scale(var(--fa-beat-scale, 1.25)); } }
@keyframes fa-beat {
0%, 90% {
-webkit-transform: scale(1);
transform: scale(1); }
45% {
-webkit-transform: scale(var(--fa-beat-scale, 1.25));
transform: scale(var(--fa-beat-scale, 1.25)); } }
@-webkit-keyframes fa-bounce {
0% {
-webkit-transform: scale(1, 1) translateY(0);
transform: scale(1, 1) translateY(0); }
10% {
-webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); }
30% {
-webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); }
50% {
-webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); }
57% {
-webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); }
64% {
-webkit-transform: scale(1, 1) translateY(0);
transform: scale(1, 1) translateY(0); }
100% {
-webkit-transform: scale(1, 1) translateY(0);
transform: scale(1, 1) translateY(0); } }
@keyframes fa-bounce {
0% {
-webkit-transform: scale(1, 1) translateY(0);
transform: scale(1, 1) translateY(0); }
10% {
-webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); }
30% {
-webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); }
50% {
-webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); }
57% {
-webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); }
64% {
-webkit-transform: scale(1, 1) translateY(0);
transform: scale(1, 1) translateY(0); }
100% {
-webkit-transform: scale(1, 1) translateY(0);
transform: scale(1, 1) translateY(0); } }
@-webkit-keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4); } }
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4); } }
@-webkit-keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
-webkit-transform: scale(1);
transform: scale(1); }
50% {
opacity: 1;
-webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
transform: scale(var(--fa-beat-fade-scale, 1.125)); } }
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
-webkit-transform: scale(1);
transform: scale(1); }
50% {
opacity: 1;
-webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));
transform: scale(var(--fa-beat-fade-scale, 1.125)); } }
@-webkit-keyframes fa-flip {
50% {
-webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } }
@keyframes fa-flip {
50% {
-webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg)); } }
@-webkit-keyframes fa-shake {
0% {
-webkit-transform: rotate(-15deg);
transform: rotate(-15deg); }
4% {
-webkit-transform: rotate(15deg);
transform: rotate(15deg); }
8%, 24% {
-webkit-transform: rotate(-18deg);
transform: rotate(-18deg); }
12%, 28% {
-webkit-transform: rotate(18deg);
transform: rotate(18deg); }
16% {
-webkit-transform: rotate(-22deg);
transform: rotate(-22deg); }
20% {
-webkit-transform: rotate(22deg);
transform: rotate(22deg); }
32% {
-webkit-transform: rotate(-12deg);
transform: rotate(-12deg); }
36% {
-webkit-transform: rotate(12deg);
transform: rotate(12deg); }
40%, 100% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); } }
@keyframes fa-shake {
0% {
-webkit-transform: rotate(-15deg);
transform: rotate(-15deg); }
4% {
-webkit-transform: rotate(15deg);
transform: rotate(15deg); }
8%, 24% {
-webkit-transform: rotate(-18deg);
transform: rotate(-18deg); }
12%, 28% {
-webkit-transform: rotate(18deg);
transform: rotate(18deg); }
16% {
-webkit-transform: rotate(-22deg);
transform: rotate(-22deg); }
20% {
-webkit-transform: rotate(22deg);
transform: rotate(22deg); }
32% {
-webkit-transform: rotate(-12deg);
transform: rotate(-12deg); }
36% {
-webkit-transform: rotate(12deg);
transform: rotate(12deg); }
40%, 100% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); } }
@-webkit-keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
@keyframes fa-spin {
0% {
-webkit-transform: rotate(0deg);
transform: rotate(0deg); }
100% {
-webkit-transform: rotate(360deg);
transform: rotate(360deg); } }
.fa-rotate-90 {
-webkit-transform: rotate(90deg);
transform: rotate(90deg); }
.fa-rotate-180 {
-webkit-transform: rotate(180deg);
transform: rotate(180deg); }
.fa-rotate-270 {
-webkit-transform: rotate(270deg);
transform: rotate(270deg); }
.fa-flip-horizontal {
-webkit-transform: scale(-1, 1);
transform: scale(-1, 1); }
.fa-flip-vertical {
-webkit-transform: scale(1, -1);
transform: scale(1, -1); }
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
-webkit-transform: scale(-1, -1);
transform: scale(-1, -1); }
.fa-rotate-by {
-webkit-transform: rotate(var(--fa-rotate-angle, none));
transform: rotate(var(--fa-rotate-angle, none)); }
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em; }
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto); }
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em; }
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em; }
.fa-inverse {
color: var(--fa-inverse, #fff); }
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0; }
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0; }
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4); }
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1); }
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black; }
.fad.fa-inverse,
.fa-duotone.fa-inverse {
color: var(--fa-inverse, #fff); }

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,26 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype");
unicode-range: U+F003,U+F006,U+F014,U+F016-F017,U+F01A-F01B,U+F01D,U+F022,U+F03E,U+F044,U+F046,U+F05C-F05D,U+F06E,U+F070,U+F087-F088,U+F08A,U+F094,U+F096-F097,U+F09D,U+F0A0,U+F0A2,U+F0A4-F0A7,U+F0C5,U+F0C7,U+F0E5-F0E6,U+F0EB,U+F0F6-F0F8,U+F10C,U+F114-F115,U+F118-F11A,U+F11C-F11D,U+F133,U+F147,U+F14E,U+F150-F152,U+F185-F186,U+F18E,U+F190-F192,U+F196,U+F1C1-F1C9,U+F1D9,U+F1DB,U+F1E3,U+F1EA,U+F1F7,U+F1F9,U+F20A,U+F247-F248,U+F24A,U+F24D,U+F255-F25B,U+F25D,U+F271-F274,U+F278,U+F27B,U+F28C,U+F28E,U+F29C,U+F2B5,U+F2B7,U+F2BA,U+F2BC,U+F2BE,U+F2C0-F2C1,U+F2C3,U+F2D0,U+F2D2,U+F2D4,U+F2DC; }
@font-face {
font-family: 'FontAwesome';
font-display: block;
src: url("../webfonts/fa-v4compatibility.woff2") format("woff2"), url("../webfonts/fa-v4compatibility.ttf") format("truetype");
unicode-range: U+F041,U+F047,U+F065-F066,U+F07D-F07E,U+F080,U+F08B,U+F08E,U+F090,U+F09A,U+F0AC,U+F0AE,U+F0B2,U+F0D0,U+F0D6,U+F0E4,U+F0EC,U+F10A-F10B,U+F123,U+F13E,U+F148-F149,U+F14C,U+F156,U+F15E,U+F160-F161,U+F163,U+F175-F178,U+F195,U+F1F8,U+F219,U+F27A; }

View file

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../webfonts/fa-v4compatibility.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f27a}

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,22 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
@font-face {
font-family: 'Font Awesome 5 Brands';
font-display: block;
font-weight: 400;
src: url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.ttf") format("truetype"); }
@font-face {
font-family: 'Font Awesome 5 Free';
font-display: block;
font-weight: 900;
src: url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.ttf") format("truetype"); }
@font-face {
font-family: 'Font Awesome 5 Free';
font-display: block;
font-weight: 400;
src: url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.ttf") format("truetype"); }

View file

@ -0,0 +1,6 @@
/*!
* Font Awesome Free 6.2.1 by @fontawesome - https://fontawesome.com
* License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* Copyright 2022 Fonticons, Inc.
*/
@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}

View file

@ -1,63 +1,56 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!doctype html>
<html lang="en">
<html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/>
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
<title>b1gMail - {lng p="acp"}</title> <title>b1gMail - {lng p="acp"}</title>
<!-- meta --> <meta name="theme-color" content=""/>
<meta http-equiv="content-type" content="text/html; charset={$charset}" /> <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/>
<meta name="apple-mobile-web-app-capable" content="yes"/>
<meta name="mobile-web-app-capable" content="yes"/>
<meta name="HandheldFriendly" content="True"/>
<meta name="MobileOptimized" content="320"/>
<link rel="icon" type="image/png" href="{$tpldir}images/favicon-256x256.png" />
<!-- links --> <meta name="description" content="{lng p="acp"}"/>
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
<link href="{$tpldir}style/common.css?{fileDateSig file="style/common.css"}" rel="stylesheet" type="text/css" />
<!-- client scripts --> <link rel="stylesheet" href="{$tpldir}css/tabler.min.css?{fileDateSig file="css/tabler.min.css"}" />
<script src="../clientlang.php?sid={$sid}" type="text/javascript"></script> <script src="{$tpldir}js/tabler.min.js?{fileDateSig file="js/tabler.min.js"}"></script>
<script src="{$tpldir}js/common.js?{fileDateSig file="js/common.js"}" type="text/javascript"></script> <script src="{$tpldir}js/common.js?{fileDateSig file="js/common.js"}"></script>
</head> </head>
<body onload="EBID('username').focus();" class="d-flex flex-column" id="loginBody" style="background-color: #333333;">
<body onload="EBID('username').focus();" id="loginBody"> <div class="page page-center">
<div class="container container-tight py-4">
<div class="text-center mb-4">
<img src="{$tpldir}images/logo_text.png" height="36" alt="{lng p="acp"}">
</div>
<div class="card card-md">
<div class="card-body">
<h2 class="h2 text-center mb-4">{lng p="acp"}</h2>
<form action="index.php?action=login" method="post" autocomplete="off"> <form action="index.php?action=login" method="post" autocomplete="off">
{if isset($jump)}<input type="hidden" id="jump" name="jump" value="{text value=$jump allowEmpty=true}" />{/if} <div class="mb-3">
<input type="hidden" name="timezone" id="timezone" value="{$timezone}" /> <label class="form-label">{lng p="username"}</label>
<input type="text" id="username" name="username" class="form-control" placeholder="{lng p="username"}" autocomplete="off">
<div id="loginBox1">
<div id="loginBox2">
<div id="loginBox3">
{if isset($error)}<div class="loginError">{$error}</div>{/if}
<div id="loginLogo">
<img src="templates/images/logo_letter.png" style="width:90px;height:53px;" border="0" alt="" />
</div>
<div id="loginForm">
{lng p="username"}:<br />
<input id="username" type="text" name="username" value="" style="width:200px;" />
<br /><br />
{lng p="password"}:<br />
<input id="pw" type="password" name="password" value="" style="width:200px;" />
<br /><br />
<div style="float:right;">
<input class="button" type="submit" value=" {lng p="login"} &raquo; " />
</div>
</div>
<br class="clear" />
</div> </div>
<div class="mb-2">
<label class="form-label">{lng p="password"}</label>
<input type="password" id="pw" name="password" class="form-control" placeholder="{lng p="password"}" autocomplete="off">
</div> </div>
<div class="form-footer">
<button type="submit" class="btn btn-primary w-100">{lng p="login"}</button>
</div> </div>
</form> </form>
</div>
</div>
</div>
</div>
<script> <script>
<!-- <!--
EBID('timezone').value = (new Date()).getTimezoneOffset() * (-60); EBID('timezone').value = (new Date()).getTimezoneOffset() * (-60);
//--> //-->
</script> </script>
</body> </body>
</html> </html>

View file

@ -2,25 +2,23 @@
<legend>{lng p="archiving"}</legend> <legend>{lng p="archiving"}</legend>
<form action="logs.php?action=archiving&do=archive&sid={$sid}" method="post" onsubmit="if(EBID('saveCopy').checked || confirm('{lng p="reallynotarc"}')) spin(this); else return(false);"> <form action="logs.php?action=archiving&do=archive&sid={$sid}" method="post" onsubmit="if(EBID('saveCopy').checked || confirm('{lng p="reallynotarc"}')) spin(this); else return(false);">
<p> <p>{lng p="logarc_desc"}</p>
{lng p="logarc_desc"}
</p>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="date"}</label>
<td width="40" valign="top"><img src="{$tpldir}images/archiving.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="80">{lng p="date"}:</td>
<td class="td2">
{html_select_date prefix="date" start_year="-5" field_order="DMY" field_separator="."}, {html_select_date prefix="date" start_year="-5" field_order="DMY" field_separator="."},
{html_select_time prefix="date" display_seconds=false} {html_select_time prefix="date" display_seconds=false}
</td> </div>
</tr> </div>
</table>
<p align="right"> <div style="float: right;"><input class="btn btn-sm" type="submit" onclick="rebuildCaches()" value="{lng p="execute"}" /></div>
<input type="checkbox" name="saveCopy" id="saveCopy" checked="checked" /> <div style="float: right;"><input type="text" class="form-control form-control-sm" name="perpage" id="perpage" value="50" size="5" />&nbsp; </div>
<label for="saveCopy"><b>{lng p="savearc"}</label> <div style="float: right;">
<input class="button" type="submit" value=" {lng p="execute"} " /> <label class="form-check">
</p> <input class="form-check-input" type="checkbox" name="saveCopy" id="saveCopy" checked="checked">
<span class="form-check-label">{lng p="savearc"}&nbsp; </span>
</label>&nbsp;
</div>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,77 +1,102 @@
<fieldset> <fieldset>
<legend>{lng p="logs"} ({date nice=true timestamp=$start} - {date nice=true timestamp=$end})</legend> <legend>{lng p="logs"} ({date nice=true timestamp=$start} - {date nice=true timestamp=$end})</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 20px;">&nbsp;</th>
<th>{lng p="entry"}</th> <th>{lng p="entry"}</th>
<th width="150">{lng p="date"}</th> <th style="width: 150px;">{lng p="date"}</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$entries item=entry} {foreach from=$entries item=entry}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td><img src="{$tpldir}images/{$entry.prioImg}.png" border="0" alt="" width="16" height="16" /></td> <td>
{if $entry.prioImg == 'debug'}
<i class="fa-solid fa-bug text-danger"></i>
{elseif $entry.prioImg == 'info'}
<i class="fa-solid fa-circle-info text-info"></i>
{elseif $entry.prioImg == 'warning'}
<i class="fa-solid fa-triangle-exclamation text-warning"></i>
{elseif $entry.prioImg == 'error'}
<i class="fa-regular fa-circle-xmark text-red"></i>
{else}
<i class="fa-solid fa-puzzle-piece text-cyan"></i>
{/if}
</td>
<td><code>{text value=$entry.eintrag}</code></td> <td><code>{text value=$entry.eintrag}</code></td>
<td>{date nice=true timestamp=$entry.zeitstempel}</td> <td>{date nice=true timestamp=$entry.zeitstempel}</td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
</table> </table>
</div>
<p align="right"> <div class="card-footer text-end"><input class="btn btn-sm" type="button" value="{lng p="export"}" onclick="parent.frames['top'].location.href='logs.php?sid={$sid}&do=export&start={$start}&end={$end}&q={$ueQ}{$prioQ}';" /></div>
<input class="button" type="button" value=" {lng p="export"} " onclick="parent.frames['top'].location.href='logs.php?sid={$sid}&do=export&start={$start}&end={$end}&q={$ueQ}{$prioQ}';" /> </div>
</p>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="filter"}</legend> <legend>{lng p="filter"}</legend>
<form action="logs.php?sid={$sid}" method="post" onsubmit="spin(this)"> <form action="logs.php?sid={$sid}" method="post" onsubmit="spin(this)">
<table> <div class="row">
<tr> <div class="col-md-6">
<td width="40" valign="top" rowspan="4"><img src="{$tpldir}images/filter.png" border="0" alt="" width="32" height="32" /></td> <div class="mb-3 row">
<td class="td1" width="80">{lng p="from"}:</td> <label class="col-sm-2 col-form-label">{lng p="from"}</label>
<td class="td2"> <div class="col-sm-10">
{html_select_date prefix="start" time=$start start_year="-5" field_order="DMY" field_separator="."}, {html_select_date prefix="start" time=$start start_year="-5" field_order="DMY" field_separator="."},
{html_select_time prefix="start" time=$start display_seconds=false} {html_select_time prefix="start" time=$start display_seconds=false}
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="to"}:</td> <label class="col-sm-2 col-form-label">{lng p="to"}</label>
<td class="td2"> <div class="col-sm-10">
{html_select_date prefix="end" time=$end start_year="-5" field_order="DMY" field_separator="."}, {html_select_date prefix="end" time=$end start_year="-5" field_order="DMY" field_separator="."},
{html_select_time prefix="end" time=$end display_seconds=false} {html_select_time prefix="end" time=$end display_seconds=false}
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="priority"}:</td> <label class="col-sm-2 col-form-label">{lng p="search"}</label>
<td class="td2"> <div class="col-sm-10">
<input type="checkbox"{if $prio[8]} checked="checked"{/if} name="prio[8]" id="prio8" /> <input type="text" class="form-control" name="q" value="{if isset($q)}{text value=$q allowEmpty=true}{/if}" placeholder="{lng p="search"}">
<label for="prio8"><img src="{$tpldir}images/debug.png" border="0" alt="" width="16" height="16" /></label> &nbsp; </div>
</div>
</div>
<div class="col-md-6">
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="priority"}</label>
<div class="col-sm-10">
<label class="form-check">
<input class="form-check-input" type="checkbox"{if $prio[8]} checked="checked"{/if} name="prio[8]" id="prio8">
<span class="form-check-label"><i class="fa-solid fa-bug text-danger"></i></span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox"{if $prio[2]} checked="checked"{/if} name="prio[2]" id="prio2">
<span class="form-check-label"><i class="fa-solid fa-circle-info text-info"></i></span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox"{if $prio[1]} checked="checked"{/if} name="prio[1]" id="prio1">
<span class="form-check-label"><i class="fa-solid fa-triangle-exclamation text-warning"></i></span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox"{if $prio[4]} checked="checked"{/if} name="prio[4]" id="prio4">
<span class="form-check-label"><i class="fa-regular fa-circle-xmark text-red"></i></span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox"{if $prio[16]} checked="checked"{/if} name="prio[16]" id="prio16">
<span class="form-check-label"><i class="fa-solid fa-puzzle-piece text-cyan"></i></span>
</label>
</div>
</div>
</div>
</div>
<input type="checkbox"{if $prio[2]} checked="checked"{/if} name="prio[2]" id="prio2" /> <div class="text-end">
<label for="prio2"><img src="{$tpldir}images/info.png" border="0" alt="" width="16" height="16" /></label> &nbsp; <input class="btn btn-primary" type="submit" value="{lng p="apply"}" />
</div>
<input type="checkbox"{if $prio[1]} checked="checked"{/if} name="prio[1]" id="prio1" />
<label for="prio1"><img src="{$tpldir}images/warning.png" border="0" alt="" width="16" height="16" /></label> &nbsp;
<input type="checkbox"{if $prio[4]} checked="checked"{/if} name="prio[4]" id="prio4" />
<label for="prio4"><img src="{$tpldir}images/error.png" border="0" alt="" width="16" height="16" /></label> &nbsp;
<input type="checkbox"{if $prio[16]} checked="checked"{/if} name="prio[16]" id="prio16" />
<label for="prio16"><img src="{$tpldir}images/plugin.png" border="0" alt="" width="16" height="16" /></label>
</td>
</tr>
<tr>
<td class="td1">{lng p="search"}:</td>
<td class="td2">
<input type="text" name="q" value="{if isset($q)}{text value=$q allowEmpty=true}{/if}" size="36" style="width:85%;" />
</td>
</tr>
</table>
<p align="right">
<input class="button" type="submit" value=" {lng p="apply"} " />
</p>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,24 +2,25 @@
<legend>{$msgTitle}</legend> <legend>{$msgTitle}</legend>
{if !empty($msgIcon)} {if !empty($msgIcon)}
<table> {if $msgIcon == 'add32'}
<tr> <div class="alert alert-success"><i class="fa-regular fa-circle-check"></i> {$msgText}</div>
<td width="36" valign="top"><img src="{$tpldir}images/{$msgIcon}.png" border="0" alt="" width="32" height="32" /></td> {elseif $msgIcon == 'error32'}
<td valign="top">{$msgText}</td> <div class="alert alert-danger"><i class="fa-solid fa-triangle-exclamation"></i> {$msgText}</div>
</tr>
</table>
{else} {else}
{$msgText} <div class="alert alert-info"><i class="fa-solid fa-circle-info"></i> {$msgText}</div>
{/if}
{else}
<div class="alert">{$msgText}</div>
{/if} {/if}
{if !empty($backLink)} {if !empty($backLink)}
<p align="right"> <div class="text-end">
<input class="button" type="button" onclick="document.location.href='{$backLink}sid={$sid}';" value=" {lng p="back"} " /> <input class="btn btn-primary" type="button" onclick="document.location.href='{$backLink}sid={$sid}';" value="{lng p="back"}" />
</p> </div>
{else} {else}
<p align="right"> <div class="text-end">
<input class="button" type="button" onclick="history.back(1);" value=" {lng p="back"} " /> <input class="btn btn-primary" type="button" onclick="history.back(1);" value="{lng p="back"}" />
</p> </div>
{/if} {/if}
</fieldset> </fieldset>

View file

@ -1,15 +1,7 @@
<fieldset> <fieldset>
<legend>{lng p="newsletter"}</legend> <legend>{lng p="newsletter"}</legend>
<center> <div class="alert alert-info">{lng p="sendingletter"}: <span id="status">0 / {$recpCount}</span></div>
<br />
<img src="{$tpldir}images/load_32.gif" border="0" alt="" /><br /><br />
{lng p="sendingletter"}<br />
<span id="status">0 / {$recpCount}</span>
<br /><br />
</center>
</fieldset> </fieldset>
<script type="text/javascript"> <script type="text/javascript">

View file

@ -2,40 +2,50 @@
<legend>{lng p="edittemplate"}</legend> <legend>{lng p="edittemplate"}</legend>
<form name="f1" action="newsletter.php?action=templates&do=edit&templateID={$tpl.templateid}&save=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);"> <form name="f1" action="newsletter.php?action=templates&do=edit&templateID={$tpl.templateid}&save=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);">
<table width="100%">
<tr>
<td width="40" valign="top" rowspan="7"><img src="{$tpldir}images/newsletter.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="120">{lng p="title"}:</td>
<td class="td2"><input type="text" id="subject" name="title" value="{if isset($tpl.title)}{text value=$tpl.title allowEmpty=true}{/if}" size="42" /></td>
</tr>
<tr>
<td class="td1" >{lng p="mode"}:</td>
<td class="td2">
<input type="radio" name="mode" value="html" id="mode_html"{if $tpl.mode=='html'} checked="checked"{/if} onclick="if(this.checked) return editor.switchMode('html');" />
<label for="mode_html"><b>{lng p="htmltext"}</b></label>
<input type="radio" name="mode" value="text" id="mode_text"{if $tpl.mode=='text'} checked="checked"{/if} onclick="if(this.checked) return editor.switchMode('text');" /> <div class="mb-3 row">
<label for="mode_text"><b>{lng p="plaintext"}</b></label> <label class="col-sm-2 col-form-label">{lng p="title"}</label>
</td> <div class="col-sm-10">
</tr> <input type="text" class="form-control" id="subject" name="title" value="{if isset($tpl.title)}{text value=$tpl.title allowEmpty=true}{/if}" placeholder="{lng p="title"}">
<tr> </div>
<td class="td1">{lng p="from"}:</td> </div>
<td class="td2"><input type="text" id="from" name="from" value="{if isset($tpl.from)}{text value=$tpl.from allowEmpty=true}{/if}" size="42" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="mode"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="subject"}:</td> <label class="form-check">
<td class="td2"><input type="text" id="subject" name="subject" value="{if isset($tpl.subject)}{text value=$tpl.subject allowEmpty=true}{/if}" size="42" /></td> <input class="form-check-input" type="radio" name="mode" value="html" id="mode_html"{if $tpl.mode=='html'} checked="checked"{/if} checked="checked" onclick="if(this.checked) return editor.switchMode('html');">
</tr> <span class="form-check-label">{lng p="htmltext"}</span>
<tr> </label>
<td class="td1">{lng p="priority"}:</td> <label class="form-check">
<td class="td2"><select name="priority" id="priority"> <input class="form-check-input" type="radio" name="mode" value="text" id="mode_text"{if $tpl.mode=='text'} checked="checked"{/if} onclick="if(this.checked) return editor.switchMode('text');">
<span class="form-check-label">{lng p="plaintext"}</span>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="from"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="from" name="from" value="{if isset($tpl.from)}{text value=$tpl.from allowEmpty=true}{/if}" placeholder="{lng p="from"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="subject"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="subject" name="subject" value="{if isset($tpl.subject)}{text value=$tpl.subject allowEmpty=true}{/if}" placeholder="{lng p="subject"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="priority"}</label>
<div class="col-sm-10">
<select name="priority" id="priority" class="form-select">
<option value="1"{if $tpl.priority==1} selected="selected"{/if}>{lng p="prio_1"}</option> <option value="1"{if $tpl.priority==1} selected="selected"{/if}>{lng p="prio_1"}</option>
<option value="0"{if $tpl.priority==0} selected="selected"{/if}>{lng p="prio_0"}</option> <option value="0"{if $tpl.priority==0} selected="selected"{/if}>{lng p="prio_0"}</option>
<option value="-1"{if $tpl.priority==-1} selected="selected"{/if}>{lng p="prio_-1"}</option> <option value="-1"{if $tpl.priority==-1} selected="selected"{/if}>{lng p="prio_-1"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td colspan="2" style="border: 1px solid #DDDDDD;background-color:#FFFFFF;"> <div class="mb-3 row">
<div class="col-sm-12">
<textarea name="emailText" id="emailText" class="plainTextArea" style="width:100%;height:400px;">{text allowEmpty=true value=$tpl.body}</textarea> <textarea name="emailText" id="emailText" class="plainTextArea" style="width:100%;height:400px;">{text allowEmpty=true value=$tpl.body}</textarea>
<script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script> <script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script>
<script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script> <script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script>
@ -43,17 +53,15 @@
<!-- <!--
var editor = new htmlEditor('emailText'); var editor = new htmlEditor('emailText');
editor.height = 400; editor.height = 400;
editor.disableIntro = true;
editor.init(); editor.init();
registerLoadAction('editor.start()'); registerLoadAction('editor.start()');
registerLoadAction('editor.switchMode("{if $tpl.mode=='text'}text{else}html{/if}", true);');
//--> //-->
</script> </script>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td colspan="2"> <div class="col-sm-12">
<select class="smallInput" onchange="editor.insertText(this.value);"> <select class="form-select" onchange="editor.insertText(this.value);">
<option value="">-- {lng p="vars"} --</option> <option value="">-- {lng p="vars"} --</option>
<option value="%%email%%">%%email%% ({lng p="email"})</option> <option value="%%email%%">%%email%% ({lng p="email"})</option>
<option value="%%greeting%%">%%greeting%% ({lng p="greeting"})</option> <option value="%%greeting%%">%%greeting%% ({lng p="greeting"})</option>
@ -61,14 +69,11 @@
<option value="%%firstname%%">%%firstname%% ({lng p="firstname"})</option> <option value="%%firstname%%">%%firstname%% ({lng p="firstname"})</option>
<option value="%%lastname%%">%%lastname%% ({lng p="lastname"})</option> <option value="%%lastname%%">%%lastname%% ({lng p="lastname"})</option>
</select> </select>
</td>
</tr>
</table>
<p>
<div style="float:right;" class="buttons">
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p> </div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,46 +2,50 @@
<legend>{lng p="templates"}</legend> <legend>{lng p="templates"}</legend>
<form name="f1" action="newsletter.php?action=templates&sid={$sid}" method="post"> <form name="f1" action="newsletter.php?action=templates&sid={$sid}" method="post">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'tpl_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'tpl_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="title"}</th> <th>{lng p="title"}</th>
<th>{lng p="subject"}</th> <th>{lng p="subject"}</th>
<th width="70">&nbsp;</th> <th style="width: 70px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$templates item=tpl} {foreach from=$templates item=tpl}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/template.png" border="0" width="16" height="16" alt="" /></td>
<td align="center"><input type="checkbox" name="tpl_{$tpl.templateid}" /></td> <td align="center"><input type="checkbox" name="tpl_{$tpl.templateid}" /></td>
<td>{text value=$tpl.title cut=35}</td> <td>{text value=$tpl.title cut=35}</td>
<td>{text value=$tpl.subject cut=35}</td> <td>{text value=$tpl.subject cut=35}</td>
<td> <td class="text-nowrap">
<a href="newsletter.php?action=templates&do=edit&templateID={$tpl.templateid}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
<a href="newsletter.php?action=templates&delete={$tpl.templateid}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a> <a href="newsletter.php?action=templates&do=edit&templateID={$tpl.templateid}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
<a href="newsletter.php?action=templates&delete={$tpl.templateid}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="5"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -49,40 +53,49 @@
<legend>{lng p="addtemplate"}</legend> <legend>{lng p="addtemplate"}</legend>
<form name="f1" action="newsletter.php?action=templates&add=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);"> <form name="f1" action="newsletter.php?action=templates&add=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="title"}</label>
<td width="40" valign="top" rowspan="7"><img src="{$tpldir}images/newsletter.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="120">{lng p="title"}:</td> <input type="text" class="form-control" id="subject" name="title" value="" placeholder="{lng p="title"}">
<td class="td2"><input type="text" id="subject" name="title" value="" size="42" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" >{lng p="mode"}:</td> <label class="col-sm-2 col-form-label">{lng p="mode"}</label>
<td class="td2"> <div class="col-sm-10">
<input type="radio" name="mode" value="html" id="mode_html" checked="checked" onclick="if(this.checked) return editor.switchMode('html');" /> <label class="form-check">
<label for="mode_html"><b>{lng p="htmltext"}</b></label> <input class="form-check-input" type="radio" name="mode" value="html" id="mode_html" checked="checked" onclick="if(this.checked) return editor.switchMode('html');">
<span class="form-check-label">{lng p="htmltext"}</span>
<input type="radio" name="mode" value="text" id="mode_text" onclick="if(this.checked) return editor.switchMode('text');" /> </label>
<label for="mode_text"><b>{lng p="plaintext"}</b></label> <label class="form-check">
</td> <input class="form-check-input" type="radio" name="mode" value="text" id="mode_text" onclick="if(this.checked) return editor.switchMode('text');">
</tr> <span class="form-check-label">{lng p="plaintext"}</span>
<tr> </label>
<td class="td1">{lng p="from"}:</td> </div>
<td class="td2"><input type="text" id="from" name="from" value="{if isset($from)}{text value=$from}{/if}" size="42" /></td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="from"}</label>
<td class="td1">{lng p="subject"}:</td> <div class="col-sm-10">
<td class="td2"><input type="text" id="subject" name="subject" value="" size="42" /></td> <input type="text" class="form-control" id="from" name="from" value="{if isset($from)}{text value=$from}{/if}" placeholder="{lng p="from"}">
</tr> </div>
<tr> </div>
<td class="td1">{lng p="priority"}:</td> <div class="mb-3 row">
<td class="td2"><select name="priority" id="priority"> <label class="col-sm-2 col-form-label">{lng p="subject"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="subject" name="subject" value="" placeholder="{lng p="subject"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="priority"}</label>
<div class="col-sm-10">
<select name="priority" id="priority" class="form-select">
<option value="1">{lng p="prio_1"}</option> <option value="1">{lng p="prio_1"}</option>
<option value="0" selected="selected">{lng p="prio_0"}</option> <option value="0" selected="selected">{lng p="prio_0"}</option>
<option value="-1">{lng p="prio_-1"}</option> <option value="-1">{lng p="prio_-1"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td colspan="2" style="border: 1px solid #DDDDDD;background-color:#FFFFFF;"> <div class="mb-3 row">
<div class="col-sm-12">
<textarea name="emailText" id="emailText" class="plainTextArea" style="width:100%;height:400px;"></textarea> <textarea name="emailText" id="emailText" class="plainTextArea" style="width:100%;height:400px;"></textarea>
<script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script> <script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script>
<script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script> <script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script>
@ -94,11 +107,11 @@
registerLoadAction('editor.start()'); registerLoadAction('editor.start()');
//--> //-->
</script> </script>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td colspan="2"> <div class="col-sm-12">
<select class="smallInput" onchange="editor.insertText(this.value);"> <select class="form-select" onchange="editor.insertText(this.value);">
<option value="">-- {lng p="vars"} --</option> <option value="">-- {lng p="vars"} --</option>
<option value="%%email%%">%%email%% ({lng p="email"})</option> <option value="%%email%%">%%email%% ({lng p="email"})</option>
<option value="%%greeting%%">%%greeting%% ({lng p="greeting"})</option> <option value="%%greeting%%">%%greeting%% ({lng p="greeting"})</option>
@ -106,14 +119,11 @@
<option value="%%firstname%%">%%firstname%% ({lng p="firstname"})</option> <option value="%%firstname%%">%%firstname%% ({lng p="firstname"})</option>
<option value="%%lastname%%">%%lastname%% ({lng p="lastname"})</option> <option value="%%lastname%%">%%lastname%% ({lng p="lastname"})</option>
</select> </select>
</td>
</tr>
</table>
<p>
<div style="float:right;" class="buttons">
<input class="button" type="submit" value=" {lng p="add"} " />
</div> </div>
</p> </div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</div>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,97 +1,125 @@
<form action="newsletter.php?do=send&sid={$sid}" method="post" id="newsletterForm" onsubmit="{literal}if(newsletterMode=='export') { this.target='_blank'; } else { if(EBID('subject').value.length<3 && !confirm(window.lang['sendwosubject'])) return(false); this.target='';editor.submit();spin(this); }{/literal}"> <form action="newsletter.php?do=send&sid={$sid}" method="post" id="newsletterForm" onsubmit="{literal}if(newsletterMode=='export') { this.target='_blank'; } else { if(EBID('subject').value.length<3 && !confirm(window.lang['sendwosubject'])) return(false); this.target='';editor.submit();spin(this); }{/literal}">
<fieldset> <fieldset>
<legend>{lng p="recipients"}</legend> <legend>{lng p="recipients"}</legend>
<table width="100%"> <div class="row">
<tr> <div class="col-md-6">
<td width="40" valign="top" rowspan="3"><img src="{$tpldir}images/filter.png" border="0" alt="" width="32" height="32" /></td> <div class="mb-3 row">
<td class="td1" width="120">{lng p="status"}:</td> <label class="col-sm-4 col-form-check-label">{lng p="status"}</label>
<td class="td2"> <div class="col-sm-8">
<input type="checkbox" name="statusActive" id="statusActive" checked="checked" onclick="determineNewsletterRecipients()" /> <label class="form-check">
<label for="statusActive"><b>{lng p="active"}</b></label><br /> <input class="form-check-input" type="checkbox" name="statusActive" id="statusActive" checked="checked" onclick="determineNewsletterRecipients()">
<input type="checkbox" name="statusLocked" id="statusLocked" checked="checked" onclick="determineNewsletterRecipients()" /> <span class="form-check-label">{lng p="active"}</span>
<label for="statusLocked"><b>{lng p="locked"}</b></label><br /> </label>
<input type="checkbox" name="statusNotActivated" id="statusNotActivated" checked="checked" onclick="determineNewsletterRecipients()" /> <label class="form-check">
<label for="statusNotActivated"><b>{lng p="notactivated"}</b></label><br /> <input class="form-check-input" type="checkbox" name="statusLocked" id="statusLocked" checked="checked" onclick="determineNewsletterRecipients()">
</td> <span class="form-check-label">{lng p="locked"}</span>
<td class="td1" width="120">{lng p="groups"}:</td> </label>
<td class="td2"> <label class="form-check">
<input class="form-check-input" type="checkbox" name="statusNotActivated" id="statusNotActivated" checked="checked" onclick="determineNewsletterRecipients()">
<span class="form-check-label">{lng p="notactivated"}</span>
</label>
</div>
</div>
</div>
<div class="col-md-6">
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="groups"}</label>
<div class="col-sm-8">
{foreach from=$groups item=group key=groupID} {foreach from=$groups item=group key=groupID}
<input type="checkbox" name="group_{$groupID}" id="group_{$groupID}"{if !$smarty.get.toGroup||$smarty.get.toGroup==$groupID} checked="checked"{/if} onclick="determineNewsletterRecipients()" /> <label class="form-check">
<label for="group_{$groupID}"><b>{text value=$group.title}</b></label><br /> <input class="form-check-input" type="checkbox" name="group_{$groupID}" id="group_{$groupID}"{if !$smarty.get.toGroup||$smarty.get.toGroup==$groupID} checked="checked"{/if} onclick="determineNewsletterRecipients()">
<span class="form-check-label">{text value=$group.title}</span>
</label>
{/foreach} {/foreach}
</td> </div>
</tr> </div>
<tr> </div>
</tr> </div>
<tr> <div class="row">
<td class="td1">{lng p="countries"}:</td> <div class="col-md-6">
<td class="td2"> <div class="mb-3 row">
<div id="countrySelectBox" style="background-color:#FFF;border:1px solid #CCC;overflow-y:scroll;min-height:3em;max-height:80px;"> <label class="col-sm-4 col-form-check-label">{lng p="countries"}</label>
<div class="col-sm-8" style="background-color:#FFF;border:1px solid #CCC;overflow-y:scroll;min-height:3em;max-height:80px;">
{foreach from=$countries item=country key=countryID} {foreach from=$countries item=country key=countryID}
<div style="padding:1px;"> <label class="form-check">
<input type="checkbox" name="countries[]" value="{$countryID}" id="country_{$countryID}" checked="checked" onchange="determineNewsletterRecipients()" /> <input class="form-check-input" type="checkbox" name="countries[]" value="{$countryID}" id="country_{$countryID}" checked="checked" onchange="determineNewsletterRecipients()">
<label for="country_{$countryID}">{$country}</label> <span class="form-check-label">{$country}</span>
</div> </label>
{/foreach} {/foreach}
</div> </div>
</td> </div>
<td class="td1">{lng p="sendto"}:</td> </div>
<td class="td2"> <div class="col-md-6">
<input type="radio" name="sendto" value="mailboxes" id="sendto_mailboxes" checked="checked" onclick="determineNewsletterRecipients()" /> <div class="mb-3 row">
<label for="sendto_mailboxes"><b>{lng p="mailboxes"}</b></label><br /> <label class="col-sm-4 col-form-check-label">{lng p="sendto"}</label>
<input type="radio" name="sendto" value="altmails" id="sendto_altmails" onclick="determineNewsletterRecipients()" /> <div class="col-sm-8">
<label for="sendto_altmails"><b>{lng p="altmails"}</b></label> <label class="form-check">
</td> <input class="form-check-input" type="radio" name="sendto" value="mailboxes" id="sendto_mailboxes" checked="checked" onclick="determineNewsletterRecipients()">
</tr> <span class="form-check-label">{lng p="mailboxes"}</span>
</table> </label>
</fieldset> <label class="form-check">
<input class="form-check-input" type="radio" name="sendto" value="altmails" id="sendto_altmails" onclick="determineNewsletterRecipients()">
<span class="form-check-label">{lng p="altmails"}</span>
</label>
</div>
</div>
</div>
</div>
</fieldset>
<fieldset> <fieldset>
<legend>{lng p="email"}</legend> <legend>{lng p="email"}</legend>
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="template"}</label>
<td width="40" valign="top" rowspan="7"><img src="{$tpldir}images/newsletter.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="120">{lng p="template"}:</td> <select name="template" id="template" onchange="loadNewsletterTemplate(this)" class="form-select">
<td class="td2">
<select name="template" id="template" onchange="loadNewsletterTemplate(this)">
<option value="0" selected="selected">-</option> <option value="0" selected="selected">-</option>
{foreach from=$templates item=tplTitle key=tplID} {foreach from=$templates item=tplTitle key=tplID}
<option value="{$tplID}">{text value=$tplTitle}</option> <option value="{$tplID}">{text value=$tplTitle}</option>
{/foreach} {/foreach}
</select> </select>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="mode"}:</td> <label class="col-sm-2 col-form-label">{lng p="mode"}</label>
<td class="td2"> <div class="col-sm-10">
<input type="radio" name="mode" value="html" id="mode_html" checked="checked" onclick="if(this.checked) return editor.switchMode('html');" /> <label class="form-check">
<label for="mode_html"><b>{lng p="htmltext"}</b></label> <input class="form-check-input" type="radio" name="mode" value="html" id="mode_html" checked="checked" onclick="if(this.checked) return editor.switchMode('html');">
<span class="form-check-label">{lng p="htmltext"}</span>
<input type="radio" name="mode" value="text" id="mode_text" onclick="if(this.checked) return editor.switchMode('text');" /> </label>
<label for="mode_text"><b>{lng p="plaintext"}</b></label> <label class="form-check">
</td> <input class="form-check-input" type="radio" name="mode" value="text" id="mode_text" onclick="if(this.checked) return editor.switchMode('text');">
</tr> <span class="form-check-label">{lng p="plaintext"}</span>
<tr> </label>
<td class="td1">{lng p="from"}:</td> </div>
<td class="td2"><input type="text" id="from" name="from" value="{if isset($from)}{text value=$from}{/if}" size="42" /></td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="from"}</label>
<td class="td1">{lng p="subject"}:</td> <div class="col-sm-10">
<td class="td2"><input type="text" id="subject" name="subject" value="" size="42" /></td> <input type="text" class="form-control" id="from" name="from" value="{if isset($from)}{text value=$from}{/if}" placeholder="{lng p="from"}">
</tr> </div>
<tr> </div>
<td class="td1">{lng p="priority"}:</td> <div class="mb-3 row">
<td class="td2"><select name="priority" id="priority"> <label class="col-sm-2 col-form-label">{lng p="subject"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="subject" name="subject" value="" placeholder="{lng p="subject"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="priority"}</label>
<div class="col-sm-10">
<select name="priority" id="priority" class="form-select">
<option value="1">{lng p="prio_1"}</option> <option value="1">{lng p="prio_1"}</option>
<option value="0" selected="selected">{lng p="prio_0"}</option> <option value="0" selected="selected">{lng p="prio_0"}</option>
<option value="-1">{lng p="prio_-1"}</option> <option value="-1">{lng p="prio_-1"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td colspan="2" style="border: 1px solid #DDDDDD;background-color:#FFFFFF;"> <div class="mb-3 row">
<textarea name="emailText" id="emailText" class="plainTextArea" style="width:100%;height:400px;"></textarea> <div class="col-sm-12">
<textarea name="emailText" id="emailText" class="plainTextArea"></textarea>
<script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script> <script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script>
<script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script> <script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script>
<script> <script>
@ -102,11 +130,11 @@
registerLoadAction('editor.start()'); registerLoadAction('editor.start()');
//--> //-->
</script> </script>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td colspan="2"> <div class="col-sm-12">
<select class="smallInput" onchange="editor.insertText(this.value);"> <select class="form-select" onchange="editor.insertText(this.value);">
<option value="">-- {lng p="vars"} --</option> <option value="">-- {lng p="vars"} --</option>
<option value="%%email%%">%%email%% ({lng p="email"})</option> <option value="%%email%%">%%email%% ({lng p="email"})</option>
<option value="%%greeting%%">%%greeting%% ({lng p="greeting"})</option> <option value="%%greeting%%">%%greeting%% ({lng p="greeting"})</option>
@ -114,30 +142,26 @@
<option value="%%firstname%%">%%firstname%% ({lng p="firstname"})</option> <option value="%%firstname%%">%%firstname%% ({lng p="firstname"})</option>
<option value="%%lastname%%">%%lastname%% ({lng p="lastname"})</option> <option value="%%lastname%%">%%lastname%% ({lng p="lastname"})</option>
</select> </select>
</td> </div>
</tr> </div>
</table> </fieldset>
</fieldset>
<p> <div class="row">
<div style="float:left;" class="buttons"> <div class="col-md-6">
<img src="{$tpldir}images/user_active.png" border="0" alt="" width="16" height="16" align="absmiddle" /> <div style="float: left;"><span id="recpCount">0</span> {lng p="recpdetermined"}&nbsp; </div>
<span id="recpCount">0</span> {lng p="recpdetermined"} <div style="float: left;"><input class="btn btn-sm" type="submit" value=" {lng p="export"} " id="exportButton" name="exportRecipients" disabled="disabled" onclick="newsletterMode='export';return true;" /></div>
<input class="button" type="submit" value=" {lng p="export"} " id="exportButton" name="exportRecipients" disabled="disabled" </div>
onclick="newsletterMode='export';return true;" /> <div class="col-md-6">
<div style="float: right;"><input class="btn btn-sm btn-primary" type="submit" value=" {lng p="sendletter"} " id="submitButton" disabled="disabled" onclick="newsletterMode='send';return true;" /></div>
<div style="float: right;"><input type="text" class="form-control form-control-sm" size="5" name="perpage" id="perpage" value="25" size="5" />&nbsp; </div>
<div style="float: right;">{lng p="opsperpage"}&nbsp; </div>
</div> </div>
<div style="float:right;" class="buttons">
{lng p="opsperpage"}:
<input type="text" name="perpage" id="perpage" value="25" size="5" />
<input class="button" type="submit" value=" {lng p="sendletter"} " id="submitButton" disabled="disabled"
onclick="newsletterMode='send';return true;" />
</div> </div>
</p>
</form> </form>
<script> <script>
<!-- <!--
var newsletterMode = 'export'; var newsletterMode = 'export';
registerLoadAction('determineNewsletterRecipients()'); registerLoadAction('determineNewsletterRecipients()');
//--> //-->
</script> </script>

View file

@ -1,64 +1,66 @@
{if $fileCache}<fieldset> {if $fileCache}
<fieldset>
<legend>{lng p="filecache"}</legend> <legend>{lng p="filecache"}</legend>
<form action="optimize.php?action=cache&do=cleanupFileCache&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="optimize.php?action=cache&do=cleanupFileCache&sid={$sid}" method="post" onsubmit="spin(this)">
<p>{lng p="filecachedesc"}</p> <p>{lng p="filecachedesc"}</p>
<table> <div class="row">
<tr> <label class="col-sm-2 col-form-label">{lng p="count"}</label>
<td align="left" rowspan="2" valign="top" width="40"><img src="{$tpldir}images/cache.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="count"}:</td> <div class="form-control-plaintext">{$cacheFileCount}</div>
<td class="td2">{$cacheFileCount}</td> </div>
</tr> </div>
<tr> <div class="row">
<td class="td1">{lng p="size"}:</td> <label class="col-sm-2 col-form-label">{lng p="count"}</label>
<td class="td2">{size bytes=$cacheFileSize}</td> <div class="col-sm-10">
</tr> <div class="form-control-plaintext">{$cacheFileSize}</div>
</table> </div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="emptycache"} " /> <input class="btn btn-sm btn-warning" type="submit" value=" {lng p="emptycache"} " />
</p> </div>
</form> </form>
</fieldset>{/if} </fieldset>
{/if}
<fieldset> <fieldset>
<legend>{lng p="rebuildcaches"}</legend> <legend>{lng p="rebuildcaches"}</legend>
<div class="alert alert-warning">{lng p="heavyop"}</div>
<div id="form"> <div id="form">
<p> <p>{lng p="rebuild_desc"}</p>
{lng p="rebuild_desc"}
</p>
<blockquote> <div class="mb-3">
<table> <div class="form-selectgroup form-selectgroup-boxes d-flex flex-column">
<tr> <label class="form-selectgroup-item flex-fill">
<td width="20" valign="top"><input type="radio" id="rebuild_usersizes" name="rebuild" value="usersizes" checked="checked" /></td> <input class="form-selectgroup-input" type="radio" id="rebuild_usersizes" name="rebuild" value="usersizes" checked="checked">
<td><label for="rebuild_usersizes"><b>{lng p="usersizes_cache"}</b></label><br /> <div class="form-selectgroup-label d-flex align-items-center p-3">
{lng p="usersizes_desc"}<br /><br /></td> <div class="me-3"><span class="form-selectgroup-check"></span></div>
</tr> <div>{lng p="usersizes_cache"}<br /><small>{lng p="usersizes_desc"}</small></div>
<tr> </div>
<td width="20" valign="top"><input type="radio" id="rebuild_disksizes" name="rebuild" value="disksizes" /></td> </label>
<td><label for="rebuild_disksizes"><b>{lng p="disksizes_cache"}</b></label><br /> <label class="form-selectgroup-item flex-fill">
{lng p="disksizes_desc"}<br /><br /></td> <input class="form-selectgroup-input" type="radio" id="rebuild_disksizes" name="rebuild" value="disksizes">
</tr> <div class="form-selectgroup-label d-flex align-items-center p-3">
<tr> <div class="me-3"><span class="form-selectgroup-check"></span></div>
<td width="20" valign="top"><input type="radio" id="rebuild_mailsizes" name="rebuild" value="mailsizes" /></td> <div>{lng p="disksizes_cache"}<br /><small>{lng p="disksizes_desc"}</small></div>
<td><label for="rebuild_mailsizes"><b>{lng p="emailsizes_cache"}</b></label><br /> </div>
{lng p="emailsizes_desc"}<br /><br /></td> </label>
</tr> <label class="form-selectgroup-item flex-fill">
</table> <input class="form-selectgroup-input" type="radio" id="rebuild_mailsizes" name="rebuild" value="mailsizes">
</blockquote> <div class="form-selectgroup-label d-flex align-items-center p-3">
<div class="me-3"><span class="form-selectgroup-check"></span></div>
<div>{lng p="emailsizes_cache"}<br /><small>{lng p="emailsizes_desc"}</small></div>
</div>
</label>
</div>
</div>
<p> <div style="float: right;"><input class="btn btn-sm btn-warning" type="submit" onclick="rebuildCaches()" value="{lng p="execute"}" /></div>
<img src="{$tpldir}images/warning.png" border="0" alt="" width="16" height="16" align="absmiddle" /> <div style="float: right;"><input type="text" class="form-control form-control-sm" name="perpage" id="perpage" value="50" size="5" />&nbsp; </div>
{lng p="heavyop"} <div style="float: right;">{lng p="opsperpage"}&nbsp; </div>
</p>
<p align="right">
{lng p="opsperpage"}:
<input type="text" name="perpage" id="perpage" value="50" size="5" />
<input class="button" type="button" onclick="rebuildCaches()" value=" {lng p="execute"} " />
</p>
</div> </div>
</fieldset> </fieldset>

View file

@ -1,130 +1,136 @@
<fieldset> <fieldset>
<legend>{lng p="db"}</legend> <legend>{lng p="db"}</legend>
{if isset($execute)} <div class="alert alert-warning">{lng p="dbwarn"}</div>
<table class="list">
{if $execute}
<div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th>&nbsp;</th>
<th>{lng p="table"}</th> <th>{lng p="table"}</th>
<th>{lng p="query"}</th> <th>{lng p="query"}</th>
<th width="100">{lng p="status"}</th> <th style="width: 100px;">{lng p="status"}</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$result item=table} {foreach from=$result item=table}
{cycle values="td1,td2" name=class assign=class} {cycle values="td1,td2" name=class assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td width="20"><img src="{$tpldir}images/db_table.png" border="0" alt="" width="16" height="16" /></td>
<td>{$table.table}</td> <td>{$table.table}</td>
<td><code>{$table.query}</code></td> <td><code>{$table.query}</code></td>
<td align="right">{if $table.type!='status' && $table.type!='info' && $table.type!='note'} <td class="text-nowrap text-end">
<img align="absmiddle" src="{$tpldir}images/error.png" width="16" height="16" alt="" border="0" /> {if $table.type!='status' && $table.type!='info' && $table.type!='note'}
<i class="fa-regular fa-circle-xmark text-red"></i>
{lng p="error"} {lng p="error"}
{else} {else}
<img align="absmiddle" src="{$tpldir}images/ok.png" width="16" height="16" alt="" border="0" /> <i class="fa-regular fa-circle-check text-green"></i>
{lng p="success"} {lng p="success"}
{/if}</td> {/if}
</td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
</table> </table>
</div>
<p align="right"> <div class="card-footer text-end">
<input class="button" type="button" value=" {lng p="back"} " onclick="document.location.href='optimize.php?sid={$sid}';" /> <input class="btn btn-sm btn-primary" type="button" value="{lng p="back"}" onclick="document.location.href='optimize.php?sid={$sid}';" />
</p> </div>
</div>
{elseif $executeStruct} {elseif $executeStruct}
<form action="optimize.php?do=repairStruct&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="optimize.php?do=repairStruct&sid={$sid}" method="post" onsubmit="spin(this)">
<table class="list">
{if $repair}<div class="alert alert-warning">{lng p="dbwarn"}</div>{/if}
<div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th>&nbsp;</th>
<th>{lng p="table"}</th> <th>{lng p="table"}</th>
<th width="120">{lng p="exists"}</th> <th style="width: 120px;">{lng p="exists"}</th>
<th width="120">{lng p="structstate"}</th> <th style="width: 120px;">{lng p="structstate"}</th>
<th width="120">{lng p="status"}</th> <th style="width: 120px;">{lng p="status"}</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$result item=table} {foreach from=$result item=table}
{cycle values="td1,td2" name=class assign=class} {cycle values="td1,td2" name=class assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td width="20"><img src="{$tpldir}images/db_table.png" border="0" alt="" width="16" height="16" /></td>
<td>{$table.table}</td> <td>{$table.table}</td>
<td>{if $table.exists}{lng p="yes"}{else}{lng p="no"}{/if}</td> <td>{if $table.exists}{lng p="yes"}{else}{lng p="no"}{/if}</td>
<td>{$table.missing} / {$table.invalid}</td> <td>{$table.missing} / {$table.invalid}</td>
<td align="right">{if !$table.exists || $table.missing || $table.invalid} <td class="text-nowrap text-end">
<img align="absmiddle" src="{$tpldir}images/error.png" width="16" height="16" alt="" border="0" /> {if !$table.exists || $table.missing || $table.invalid}
<i class="fa-regular fa-circle-xmark text-red"></i>
{lng p="error"} {lng p="error"}
{else} {else}
<img align="absmiddle" src="{$tpldir}images/ok.png" width="16" height="16" alt="" border="0" /> <i class="fa-regular fa-circle-check text-green"></i>
{lng p="ok"} {lng p="ok"}
{/if}</td> {/if}
</td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
</table> </table>
<p>
<div style="float:left;">
{if $repair}<img src="{$tpldir}images/warning.png" border="0" alt="" width="16" height="16" align="absmiddle" />
{lng p="dbwarn"}{/if}
</div> </div>
<div style="float:right;"> <div class="card-footer">
<input class="button" type="button" value=" {lng p="back"} " onclick="document.location.href='optimize.php?sid={$sid}';" /> <div class="row">
{if $repair}<input class="button" type="submit" value=" {lng p="repairstruct"} " />{/if} <div class="col-md-6">{if $repair}<input class="btn btn-sm btn-warning" type="submit" value="{lng p="repairstruct"}" />{/if}</div>
<div class="col-md-6 text-end"><input class="btn btn-sm btn-primary" type="button" value=" {lng p="back"} " onclick="document.location.href='optimize.php?sid={$sid}';" /></div>
</div>
</div>
</div> </div>
</p>
</form> </form>
{else} {else}
<form action="optimize.php?sid={$sid}&do=execute" method="post" onsubmit="spin(this)"> <form action="optimize.php?sid={$sid}&do=execute" method="post" onsubmit="spin(this)">
<table> <div class="row">
<tr> <div class="col-md-4">
<td>{lng p="tables"}:</td> <div class="mb-3">
<td>{lng p="action"}:</td> <label class="col-sm-4 col-form-label">{lng p="tables"}</label>
</tr> <select size="10" name="tables[]" multiple="multiple" class="form-select">
<tr>
<td valign="top"><select size="10" name="tables[]" multiple="multiple">
{foreach from=$tables item=table} {foreach from=$tables item=table}
<option value="{$table}" selected="selected">{$table}</option> <option value="{$table}" selected="selected">{$table}</option>
{/foreach} {/foreach}
</select></td> </select>
<td valign="top"> </div>
<table> </div>
<tr> <div class="col-md-8">
<td valign="top" width="20" align="center"><input type="radio" id="op_optimize" name="operation" value="optimize" checked="checked" /></td> <div class="mb-3">
<td valign="top"><img src="{$tpldir}images/db_optimize.png" border="0" alt="" width="32" height="32" /></td> <label class="col-sm-4 col-form-label">{lng p="action"}</label>
<td><label for="op_optimize"><b>{lng p="op_optimize"}</b></label><br /> <div class="mb-3">
{lng p="op_optimize_desc"}</td> <div class="form-selectgroup form-selectgroup-boxes d-flex flex-column">
</tr> <label class="form-selectgroup-item flex-fill">
<tr> <input class="form-selectgroup-input" type="radio" id="op_optimize" name="operation" value="optimize" checked="checked">
<td colspan="3"> <div class="form-selectgroup-label d-flex align-items-center p-3">
&nbsp; <div class="me-3"><span class="form-selectgroup-check"></span></div>
</td> <div>{lng p="op_optimize"}<br /><small>{lng p="op_optimize_desc"}</small></div>
</tr> </div>
<tr> </label>
<td valign="top" width="20" align="center"><input type="radio" id="op_repair" name="operation" value="repair" /></td> <label class="form-selectgroup-item flex-fill">
<td valign="top"><img src="{$tpldir}images/db_repair.png" border="0" alt="" width="32" height="32" /></td> <input class="form-selectgroup-input" type="radio" id="op_repair" name="operation" value="repair">
<td><label for="op_repair"><b>{lng p="op_repair"}</b></label><br /> <div class="form-selectgroup-label d-flex align-items-center p-3">
{lng p="op_repair_desc"}</td> <div class="me-3"><span class="form-selectgroup-check"></span></div>
</tr> <div>{lng p="op_repair"}<br /><small>{lng p="op_repair_desc"}</small></div>
<tr> </div>
<td colspan="3"> </label>
&nbsp; <label class="form-selectgroup-item flex-fill">
</td> <input class="form-selectgroup-input" type="radio" id="op_struct" name="operation" value="struct">
</tr> <div class="form-selectgroup-label d-flex align-items-center p-3">
<tr> <div class="me-3"><span class="form-selectgroup-check"></span></div>
<td valign="top" width="20" align="center"><input type="radio" id="op_struct" name="operation" value="struct" /></td> <div>{lng p="op_struct"}<br /><small>{lng p="op_struct_desc"}</small></div>
<td valign="top"><img src="{$tpldir}images/db_struct.png" border="0" alt="" width="32" height="32" /></td> </div>
<td><label for="op_struct"><b>{lng p="op_struct"}</b></label><br /> </label>
{lng p="op_struct_desc"}</td> </div>
</tr> </div>
</table> </div>
</td> </div>
</tr> </div>
</table>
<p> <div class="text-end">
<div style="float:left;"> <input class="btn btn-primary" type="submit" value=" {lng p="execute"} " />
<img src="{$tpldir}images/warning.png" border="0" alt="" width="16" height="16" align="absmiddle" />
{lng p="dbwarn"}
</div> </div>
<div style="float:right;">
<input class="button" type="submit" value=" {lng p="execute"} " />
</div>
</p>
</form> </form>
{/if} {/if}
</fieldset> </fieldset>

View file

@ -4,75 +4,64 @@
<form action="optimize.php?action=filesystem&do=cleanupTempFiles&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="optimize.php?action=filesystem&do=cleanupTempFiles&sid={$sid}" method="post" onsubmit="spin(this)">
<p>{lng p="tempdesc"}</p> <p>{lng p="tempdesc"}</p>
<table> <div class="row">
<tr> <label class="col-sm-2 col-form-label">{lng p="count"}</label>
<td align="left" rowspan="2" valign="top" width="40"><img src="{$tpldir}images/tempfiles.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="count"}:</td> <div class="form-control-plaintext">{$tempFileCount}</div>
<td class="td2">{$tempFileCount}</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="size"}:</td> <label class="col-sm-2 col-form-label">{lng p="size"}</label>
<td class="td2">{size bytes=$tempFileSize}</td> <div class="col-sm-10">
</tr> <div class="form-control-plaintext">{size bytes=$tempFileSize}</div>
</table> </div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="cleanup"} " /> <input class="btn btn-sm btn-warning" type="submit" value="{lng p="cleanup"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>
{if $haveSQLite3}<fieldset> {if $haveSQLite3}
<fieldset>
<legend>{lng p="rebuildblobstor"}</legend> <legend>{lng p="rebuildblobstor"}</legend>
<div class="alert alert-warning">{lng p="heavyop"}</div>
<div id="buildForm"> <div id="buildForm">
<p> <p>{lng p="rebuildblobstor_desc"}</p>
{lng p="rebuildblobstor_desc"}
</p>
<blockquote> <div class="mb-3 row">
<table> <div class="col-sm-12">
<tr> <label class="form-check">
<td width="20" valign="top"><input type="radio" id="rebuild_email" name="rebuild" value="email" checked="checked" /></td> <input class="form-check-input" type="radio" id="rebuild_email" name="rebuild" value="email" checked="checked">
<td><label for="rebuild_email"><b>{lng p="rbbs_email"}</b></label></td> <span class="form-check-label">{lng p="rbbs_email"}</span>
</tr> </label>
<tr> <label class="form-check">
<td valign="top"><input type="radio" id="rebuild_webdisk" name="rebuild" value="webdisk" /></td> <input class="form-check-input" type="radio" id="rebuild_webdisk" name="rebuild" value="webdisk">
<td><label for="rebuild_webdisk"><b>{lng p="rbbs_webdisk"}</b></label></td> <span class="form-check-label">{lng p="rbbs_webdisk"}</span>
</tr> </label>
</table> </div>
</blockquote>
<p>
<img src="{$tpldir}images/warning.png" border="0" alt="" width="16" height="16" align="absmiddle" />
{lng p="heavyop"}
</p>
<p align="right">
{lng p="opsperpage"}:
<input type="text" id="buildPerPage" value="50" size="5" />
<input class="button" type="button" onclick="rebuildBlobStor()" value=" {lng p="execute"} " />
</p>
</div> </div>
</fieldset>
<fieldset> <div style="float: right;"><input class="btn btn-sm btn-warning" type="button" onclick="rebuildBlobStor()" value="{lng p="execute"}" /></div>
<div style="float: right;"><input type="text" class="form-control form-control-sm" id="buildPerPage" value="50" size="5" />&nbsp; </div>
<div style="float: right;">{lng p="opsperpage"}&nbsp; </div>
</div>
</fieldset>
<fieldset>
<legend>{lng p="userdbvacuum"}</legend> <legend>{lng p="userdbvacuum"}</legend>
<div class="alert alert-warning">{lng p="heavyop"}</div>
<div id="vacuumForm"> <div id="vacuumForm">
<p> <p>{lng p="userdbvacuum_desc"}</p>
{lng p="userdbvacuum_desc"}<br /><br />
</p>
<p> <div style="float: right;"><input class="btn btn-sm btn-warning" type="submit" onclick="vacuumBlobStor()" value="{lng p="execute"}" /></div>
<img src="{$tpldir}images/warning.png" border="0" alt="" width="16" height="16" align="absmiddle" /> <div style="float: right;"><input type="text" class="form-control form-control-sm" id="vacuumPerPage" value="5" size="5" />&nbsp; </div>
{lng p="heavyop"} <div style="float: right;">{lng p="opsperpage"}&nbsp; </div>
</p>
<p align="right">
{lng p="opsperpage"}:
<input type="text" id="vacuumPerPage" value="5" size="5" />
<input class="button" type="button" onclick="vacuumBlobStor()" value=" {lng p="execute"} " />
</p>
</div> </div>
</fieldset>{/if} </fieldset>
{/if}

View file

@ -1,151 +1,217 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!doctype html>
<html lang="en">
<html xmlns="http://www.w3.org/1999/xhtml">
<head> <head>
<title>{if $title}{$title} - {/if}b1gMail {lng p="acp"}</title> <meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover"/>
<meta http-equiv="X-UA-Compatible" content="ie=edge"/>
<title>b1gMail - {lng p="acp"}</title>
<!-- meta --> <meta name="theme-color" content=""/>
<meta http-equiv="content-type" content="text/html; charset={$charset}" /> <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/>
<meta name="apple-mobile-web-app-capable" content="yes"/>
<meta name="mobile-web-app-capable" content="yes"/>
<meta name="HandheldFriendly" content="True"/>
<meta name="MobileOptimized" content="320"/>
<link rel="icon" type="image/png" href="{$tpldir}images/favicon-256x256.png" />
<!-- links --> <meta name="description" content="{lng p="acp"}"/>
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
<link href="{$tpldir}style/common.css?{fileDateSig file="style/common.css"}" rel="stylesheet" type="text/css" /> <link rel="stylesheet" href="{$tpldir}css/tabler.min.css?{fileDateSig file="css/tabler.min.css"}" />
<link href="../clientlib/fontawesome/css/font-awesome.min.css?{fileDateSig file="../../clientlib/fontawesome/css/font-awesome.min.css"}" rel="stylesheet" type="text/css" /> <link rel="stylesheet" href="{$tpldir}libs/fontawesome/css/all.min.css?{fileDateSig file="libs/fontawesome/css/all.min.css"}" />
<link href="../clientlib/fontawesome/css/font-awesome-animation.min.css?{fileDateSig file="../../clientlib/fontawesome/css/font-awesome-animation.min.css"}" rel="stylesheet" type="text/css" /> <link rel="stylesheet" href="{$tpldir}css/common.css?{fileDateSig file="css/common.css"}" />
{foreach from=$_cssFiles.admin item=_file} <link rel="stylesheet" type="text/css" href="{$_file}" /> {foreach from=$_cssFiles.admin item=_file}
{/foreach} <link rel="stylesheet" type="text/css" href="{$_file}" />
{/foreach}
<!-- client scripts -->
<script> <script>
<!-- <!--
var currentSID = '{$sid}'; var currentSID = '{$sid}';
//--> //-->
</script> </script>
<script src="../clientlang.php?sid={$sid}" type="text/javascript"></script> <script src="../clientlang.php?sid={$sid}" type="text/javascript"></script>
<script src="{$tpldir}js/common.js?{fileDateSig file="js/common.js"}" type="text/javascript"></script> <script src="{$tpldir}js/tabler.min.js?{fileDateSig file="js/tabler.min.js"}"></script>
{foreach from=$_jsFiles.admin item=_file} <script type="text/javascript" src="{$_file}"></script> <script src="{$tpldir}js/common.js?{fileDateSig file="js/common.js"}"></script>
{/foreach} {foreach from=$_jsFiles.admin item=_file}
<script type="text/javascript" src="{$_file}"></script>
<link href="{$tpldir}style/print.css?{fileDateSig file="style/print.css"}" rel="stylesheet" type="text/css" media="print" /> {/foreach}
</head> </head>
<body >
<body onload="documentLoader();preloadImages();" topmargin="0"> <div class="page">
<!-- Navbar -->
<div id="navbar"> <header class="navbar navbar-expand-md navbar-light d-print-none bg-dark text-white">
<div id="navbar-first"> <div class="container-xl">
<div id="navbar-logo"> <button class="navbar-toggler text-white" type="button" data-bs-toggle="collapse" data-bs-target="#navbar-menu" aria-controls="navbar-menu" aria-expanded="false" aria-label="Toggle navigation">
<div id="logo-right"> <span class="navbar-toggler-icon"></span>
{if $adminRow.type==0} </button>
<a href="welcome.php?action=phpinfo&sid={$sid}"><img src="{$tpldir}images/phpinfo.png" border="0" alt="" /> {lng p="phpinfo"}</a> <h1 class="navbar-brand navbar-brand-autodark d-none-navbar-horizontal pe-0 pe-md-3">
{/if}
<a href="javascript:showHelp();"><img src="{$tpldir}images/help.png" border="0" alt="" /> {lng p="help"}</a>
<a href="admins.php?sid={$sid}"><img src="{$tpldir}images/user_active.png" border="0" alt="" /> {text value=$adminRow.username}</a>
<a href="index.php?sid={$sid}&action=logout" onclick="return confirm('{lng p="logoutquestion"}');"><img src="{$tpldir}images/logout.png" border="0" alt="" /> {lng p="logout"}</a>
</div>
<a href="welcome.php?sid={$sid}"> <a href="welcome.php?sid={$sid}">
<img src="./templates/images/logo_letter.png" border="0" alt="" id="logo" /><img src="./templates/images/logo_text{if !$isGerman}_en{/if}.png" border="0" alt="" /> <img src="{$tpldir}images/logo_letter.png" width="110" height="32" alt="b1gMail" class="navbar-brand-image">&nbsp; &nbsp; <img src="{$tpldir}images/logo_text.png" class="navbar-brand-image" alt="b1gMail" />
</a> </a>
</h1>
<div class="navbar-nav flex-row order-md-last">
<div class="nav-item dropdown">
<a href="#" class="nav-link d-flex lh-1 text-reset p-0" data-bs-toggle="dropdown" aria-label="Open user menu">
<span class="avatar avatar-sm bg-muted" style="background-image: url('{$tpldir}images/favicon-192x192.png')"></span>
<div class="d-none d-xl-block ps-2">
<div>{text value=$adminRow.firstname} {text value=$adminRow.lastname}</div>
<div class="mt-1 small text-muted">{text value=$adminRow.username}</div>
</div>
</a>
<div class="dropdown-menu dropdown-menu-end dropdown-menu-arrow">
<a href="admins.php?sid={$sid}" class="dropdown-item">{lng p="profile"}</a>
<a href="javascript:showHelp();" class="dropdown-item">{lng p="help"}</a>
{if $adminRow.type==0}<a href="welcome.php?action=phpinfo&sid={$sid}" class="dropdown-item">{lng p="phpinfo"}</a>{/if}
<div class="dropdown-divider"></div>
<a href="index.php?sid={$sid}&action=logout" class="dropdown-item" onclick="return confirm('{lng p="logoutquestion"}');">{lng p="logout"}</a>
</div> </div>
</div> </div>
<div id="navbar-second"> </div>
<div id="navbar-nav"> </div>
<ul id="nav"> </header>
<li id="welcome-menu"><a href="#welcome-menu"><img src="./templates/images/ico_license.png" />{lng p="welcome"}</a> <header class="navbar-expand-md">
<ul> <div class="collapse navbar-collapse" id="navbar-menu">
<li><a href="welcome.php?sid={$sid}"><img src="./templates/images/ico_license.png" />{lng p="welcome"}</a></li> <div class="navbar navbar-light">
<li><a href="admins.php?sid={$sid}"><img src="./templates/images/ico_users.png" />{lng p="admins"}</a></li> <div class="container-xl">
</ul> <ul class="navbar-nav">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#navbar-base" data-bs-toggle="dropdown" data-bs-auto-close="outside" role="button" aria-expanded="false" >
<span class="nav-link-icon d-md-none d-lg-inline-block"><img src="./templates/images/ico_license.png" height="16" /></span>
<span class="nav-link-title">{lng p="welcome"}</span>
</a>
<div class="dropdown-menu">
<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/welcome.php'} active{/if}" href="welcome.php?sid={$sid}"><img src="./templates/images/ico_license.png" height="16" />&nbsp; {lng p="welcome"}</a>
<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/admins.php'} active{/if}" href="admins.php?sid={$sid}"><img src="./templates/images/ico_users.png" height="16" />&nbsp; {lng p="admins"}</a>
</div>
</li> </li>
{if $adminRow.type==0} <li class="nav-item dropdown">
<li id="prefs-menu"><a href="#prefs-menu"><img src="./templates/images/ico_prefs_misc.png" />{lng p="prefs"}</a> <a class="nav-link dropdown-toggle" href="#navbar-base" data-bs-toggle="dropdown" data-bs-auto-close="outside" role="button" aria-expanded="false" >
<ul> <span class="nav-link-icon d-md-none d-lg-inline-block"><img src="./templates/images/ico_prefs_misc.png" height="16" /></span>
<li><a href="prefs.common.php?sid={$sid}"><img src="./templates/images/ico_prefs_common.png" />{lng p="common"}</a></li> <span class="nav-link-title">{lng p="prefs"}</span>
<li><a href="prefs.email.php?sid={$sid}"><img src="./templates/images/ico_prefs_email.png" />{lng p="email"}</a></li> </a>
<li><a href="prefs.recvrules.php?sid={$sid}"><img src="./templates/images/rule32.png" />{lng p="recvrules"}</a></li> <div class="dropdown-menu">
<li><a href="prefs.webdisk.php?sid={$sid}"><img src="./templates/images/ico_disk.png" />{lng p="webdisk"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.common.php'} active{/if}" href="prefs.common.php?sid={$sid}"><img src="./templates/images/ico_prefs_common.png" height="16" />&nbsp; {lng p="common"}</a>
<li><a href="prefs.sms.php?sid={$sid}"><img src="./templates/images/gateway32.png" />{lng p="sms"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.email.php'} active{/if}" href="prefs.email.php?sid={$sid}"><img src="./templates/images/ico_prefs_email.png" height="16" />&nbsp; {lng p="email"}</a>
<li><a href="prefs.abuse.php?sid={$sid}"><img src="./templates/images/abuse.png" />{lng p="abuseprotect"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.recvrules.php'} active{/if}" href="prefs.recvrules.php?sid={$sid}"><img src="./templates/images/rule32.png" height="16" />&nbsp; {lng p="recvrules"}</a>
<li><a href="prefs.coupons.php?sid={$sid}"><img src="./templates/images/coupon.png" />{lng p="coupons"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.webdisk.php'} active{/if}" href="prefs.webdisk.php?sid={$sid}"><img src="./templates/images/ico_disk.png" height="16" />&nbsp; {lng p="webdisk"}</a>
<li><a href="prefs.profilefields.php?sid={$sid}"><img src="./templates/images/field32.png" />{lng p="profilefields"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.sms.php'} active{/if}" href="prefs.sms.php?sid={$sid}"><img src="./templates/images/gateway32.png" height="16" />&nbsp; {lng p="sms"}</a>
<li><a href="prefs.languages.php?sid={$sid}"><img src="./templates/images/lang32.png" />{lng p="languages"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.abuse.php'} active{/if}" href="prefs.abuse.php?sid={$sid}"><img src="./templates/images/abuse.png" height="16" />&nbsp; {lng p="abuseprotect"}</a>
<li><a href="prefs.templates.php?sid={$sid}"><img src="./templates/images/template.png" />{lng p="templates"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.coupons.php'} active{/if}" href="prefs.coupons.php?sid={$sid}"><img src="./templates/images/coupon.png" height="16" />&nbsp; {lng p="coupons"}</a>
<li><a href="prefs.ads.php?sid={$sid}"><img src="./templates/images/ad32.png" />{lng p="ads"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.profilefields.php'} active{/if}" href="prefs.profilefields.php?sid={$sid}"><img src="./templates/images/field32.png" height="16" />&nbsp; {lng p="profilefields"}</a>
<li><a href="prefs.faq.php?sid={$sid}"><img src="./templates/images/faq32.png" />{lng p="faq"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.languages.php'} active{/if}" href="prefs.languages.php?sid={$sid}"><img src="./templates/images/lang32.png" height="16" />&nbsp; {lng p="languages"}</a>
<li><a href="prefs.countries.php?sid={$sid}"><img src="./templates/images/country.png" />{lng p="countries"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.templates.php'} active{/if}" href="prefs.templates.php?sid={$sid}"><img src="./templates/images/template.png" height="16" />&nbsp; {lng p="templates"}</a>
<li><a href="prefs.widgetlayouts.php?sid={$sid}"><img src="./templates/images/wlayout_add.png" />{lng p="widgetlayouts"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.ads.php'} active{/if}" href="prefs.ads.php?sid={$sid}"><img src="./templates/images/ad32.png" height="16" />&nbsp; {lng p="ads"}</a>
<li><a href="prefs.payments.php?sid={$sid}"><img src="./templates/images/ico_prefs_payments.png" />{lng p="payments"}</a></li> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.faq.php'} active{/if}" href="prefs.faq.php?sid={$sid}"><img src="./templates/images/faq32.png" height="16" />&nbsp; {lng p="faq"}</a>
{if !empty($toolbox_serverurl)}<li><a href="toolbox.php?sid={$sid}"><img src="./templates/images/toolbox.png" />{lng p="toolbox"}</a></li>{/if} <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.countries.php'} active{/if}" href="prefs.countries.php?sid={$sid}"><img src="./templates/images/country.png" height="16" />&nbsp; {lng p="countries"}</a>
</ul> <a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.widgetlayouts.php'} active{/if}" href="prefs.widgetlayouts.php?sid={$sid}"><img src="./templates/images/wlayout_add.png" height="16" />&nbsp; {lng p="widgetlayouts"}</a>
<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/prefs.payments.php'} active{/if}" href="prefs.payments.php?sid={$sid}"><img src="./templates/images/ico_prefs_payments.png" height="16" />&nbsp; {lng p="payments"}</a>
{if !empty($smarty.const.TOOLBOX_SERVER)}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/toolbox.php'} active{/if}" href="toolbox.php?sid={$sid}"><img src="./templates/images/toolbox.png" height="16" />&nbsp; {lng p="toolbox"}</a>{/if}
</div>
</li> </li>
{/if}
{if $adminRow.type==0||$adminRow.privileges.users||$adminRow.privileges.groups||$adminRow.privileges.workgroups||$adminRow.privileges.activity||$adminRow.privileges.newsletter||$adminRow.privileges.payments} {if $adminRow.type==0||$adminRow.privileges.users||$adminRow.privileges.groups||$adminRow.privileges.workgroups||$adminRow.privileges.activity||$adminRow.privileges.newsletter||$adminRow.privileges.payments}
<li id="users-menu"><a href="#users-menu"><img src="./templates/images/ico_users.png" />{lng p="usersgroups"}</a> <li class="nav-item dropdown">
<ul> <a class="nav-link dropdown-toggle" href="#navbar-base" data-bs-toggle="dropdown" data-bs-auto-close="outside" role="button" aria-expanded="false" >
{if $adminRow.type==0||$adminRow.privileges.users}<li><a href="users.php?sid={$sid}"><img src="./templates/images/user_action.png" />{lng p="users"}</a></li>{/if} <span class="nav-link-icon d-md-none d-lg-inline-block"><img src="./templates/images/ico_users.png" height="16" /></span>
{if $adminRow.type==0||$adminRow.privileges.groups}<li><a href="groups.php?sid={$sid}"><img src="./templates/images/ico_group.png" />{lng p="groups"}</a></li>{/if} <span class="nav-link-title">{lng p="usersgroups"}</span>
{if $adminRow.type==0||$adminRow.privileges.workgroups}<li><a href="workgroups.php?sid={$sid}"><img src="./templates/images/ico_workgroup.png" />{lng p="workgroups"}</a>{/if} </a>
{if $adminRow.type==0||$adminRow.privileges.activity}<li><a href="activity.php?sid={$sid}"><img src="./templates/images/activity.png" />{lng p="activity"}</a></li>{/if} <div class="dropdown-menu">
{if $adminRow.type==0||$adminRow.privileges.abuse}<li><a href="abuse.php?sid={$sid}"><img src="./templates/images/abuse.png" />{lng p="abuseprotect"}</a></li>{/if} {if $adminRow.type==0||$adminRow.privileges.users}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/users.php'} active{/if}" href="users.php?sid={$sid}"><img src="./templates/images/user_action.png" height="16" />&nbsp; {lng p="users"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.newsletter}<li><a href="newsletter.php?sid={$sid}"><img src="./templates/images/newsletter.png" />{lng p="newsletter"}</a></li>{/if} {if $adminRow.type==0||$adminRow.privileges.groups}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/groups.php'} active{/if}" href="groups.php?sid={$sid}"><img src="./templates/images/ico_group.png" height="16" />&nbsp; {lng p="groups"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.payments}<li><a href="payments.php?sid={$sid}"><img src="./templates/images/ico_prefs_payments.png" />{lng p="payments"}</a></li>{/if} {if $adminRow.type==0||$adminRow.privileges.workgroups}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/workgroups.php'} active{/if}" href="workgroups.php?sid={$sid}"><img src="./templates/images/ico_workgroup.png" height="16" />&nbsp; {lng p="workgroups"}</a>{/if}
</ul> {if $adminRow.type==0||$adminRow.privileges.activity}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/activity.php'} active{/if}" href="activity.php?sid={$sid}"><img src="./templates/images/activity.png" height="16" />&nbsp; {lng p="activity"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.abuse}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/abuse.php'} active{/if}" href="abuse.php?sid={$sid}"><img src="./templates/images/abuse.png" height="16" />&nbsp; {lng p="abuseprotect"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.newsletter}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/newsletter.php'} active{/if}" href="newsletter.php?sid={$sid}"><img src="./templates/images/newsletter.png" height="16" />&nbsp; {lng p="newsletter"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.payments}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/payments.php'} active{/if}" href="payments.php?sid={$sid}"><img src="./templates/images/ico_prefs_payments.png" height="16" />&nbsp; {lng p="payments"}</a>{/if}
</div>
</li> </li>
{/if} {/if}
{if $adminRow.type==0||$adminRow.privileges.optimize||$adminRow.privileges.maintenance||$adminRow.privileges.stats||$adminRow.privileges.logs} {if $adminRow.type==0||$adminRow.privileges.optimize||$adminRow.privileges.maintenance||$adminRow.privileges.stats||$adminRow.privileges.logs}
<li id="tools-menu"><a href="#tools-menu"><img src="./templates/images/toolbox.png" />{lng p="tools"}</a> <li class="nav-item dropdown">
<ul> <a class="nav-link dropdown-toggle" href="#navbar-base" data-bs-toggle="dropdown" data-bs-auto-close="outside" role="button" aria-expanded="false" >
{if $adminRow.type==0||$adminRow.privileges.optimize}<li><a href="optimize.php?sid={$sid}"><img src="./templates/images/db_optimize.png" />{lng p="optimize"}</a></li>{/if} <span class="nav-link-icon d-md-none d-lg-inline-block"><img src="./templates/images/toolbox.png" height="16" /></span>
{if $adminRow.type==0||$adminRow.privileges.maintenance}<li><a href="maintenance.php?sid={$sid}"><img src="./templates/images/orphans32.png" />{lng p="maintenance"}</a></li>{/if} <span class="nav-link-title">{lng p="tools"}</span>
{if $adminRow.type==0||$adminRow.privileges.stats}<li><a href="stats.php?sid={$sid}"><img src="./templates/images/stats.png" />{lng p="stats"}</a></li>{/if} </a>
{if $adminRow.type==0||$adminRow.privileges.logs}<li><a href="logs.php?sid={$sid}"><img src="./templates/images/logs.png" />{lng p="logs"}</a></li>{/if} <div class="dropdown-menu">
</ul> {if $adminRow.type==0||$adminRow.privileges.optimize}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/optimize.php'} active{/if}" href="optimize.php?sid={$sid}"><img src="./templates/images/db_optimize.png" height="16" />&nbsp; {lng p="optimize"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.maintenance}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/maintenance.php'} active{/if}" href="maintenance.php?sid={$sid}"><img src="./templates/images/orphans32.png" height="16" />&nbsp; {lng p="maintenance"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.stats}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/stats.php'} active{/if}" href="stats.php?sid={$sid}"><img src="./templates/images/stats.png" height="16" />&nbsp; {lng p="stats"}</a>{/if}
{if $adminRow.type==0||$adminRow.privileges.logs}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/logs.php'} active{/if}" href="logs.php?sid={$sid}"><img src="./templates/images/logs.png" height="16" />&nbsp; {lng p="logs"}</a>{/if}
</div>
</li> </li>
{/if} {/if}
{if $adminRow.type==0||$adminRow.privileges.plugins} {if $adminRow.type==0||$adminRow.privileges.plugins}
<li id="plugins-menu"><a href="#plugins-menu"><img src="./templates/images/plugin.png" />{lng p="plugins"}</a> <li class="nav-item dropdown">
<ul> <a class="nav-link dropdown-toggle" href="#navbar-base" data-bs-toggle="dropdown" data-bs-auto-close="outside" role="button" aria-expanded="false" >
{if $adminRow.type==0}<li><a href="plugins.php?sid={$sid}"><img src="./templates/images/plugin.png" />{lng p="plugins"}</a></li>{/if} <span class="nav-link-icon d-md-none d-lg-inline-block"><img src="./templates/images/plugin.png" height="16" /></span>
<span class="nav-link-title">{lng p="plugins"}</span>
</a>
<div class="dropdown-menu">
{if $adminRow.type==0}<a class="dropdown-item{if $smarty.server.SCRIPT_NAME=='/admin/plugins.php'} active{/if}" href="plugins.php?sid={$sid}"><img src="./templates/images/plugin.png" height="16" />&nbsp; {lng p="plugins"}</a>{/if}
{foreach from=$pluginMenuItems item=pluginInfo key=plugin} {foreach from=$pluginMenuItems item=pluginInfo key=plugin}
{if $adminRow.type==0||$adminRow.privileges.plugins.$plugin} {if $adminRow.type==0||$adminRow.privileges.plugins.$plugin}
<li><a href="plugin.page.php?sid={$sid}&plugin={$plugin}" ><img src="{if $pluginInfo.icon}../plugins/templates/images/{$pluginInfo.icon}{else}./templates/images/wlayout_add.png{/if}" />{$pluginInfo.title}</a></li> <a class="dropdown-item{if $smarty.get.plugin==$plugin} active{/if}" href="plugin.page.php?sid={$sid}&plugin={$plugin}" ><img src="{if $pluginInfo.icon}../plugins/templates/images/{$pluginInfo.icon}{else}./templates/images/wlayout_add.png{/if}" height="16" />&nbsp; {$pluginInfo.title}</a>
{/if} {/if}
{/foreach} {/foreach}
</ul> </div>
</li> </li>
{/if} {/if}
</ul> </ul>
</div> </div>
</div> </div>
</div> </div>
</header>
<div class="page-wrapper">
<!-- Page header -->
<div class="page-header d-print-none">
<div class="container-xl">
<div class="row g-2 align-items-center">
<div class="col">
<h2 class="page-title">
{if $title}<div id="breadcrumb">{$title}</div>{/if}
</h2>
</div>
</div>
</div>
</div>
{if $title}<div id="breadcrumb"> <!-- Page body -->
{$title} <div class="page-body">
</div>{/if} <div class="container-xl d-flex flex-column justify-content-center">
<div class="card">
<div id="content"> <div class="card-header bg-muted-lt">
<div id="pageTabs"> <ul class="nav nav-pills card-header-pills">
<ul>
{foreach from=$tabs item=tab} {foreach from=$tabs item=tab}
<li{if $tab.active} class="active"{/if}> <li class="nav-item">
<a href="{$tab.link}sid={$sid}"> <a href="{$tab.link}sid={$sid}" class="nav-link{if $tab.active} bg-white{/if}"><span class="d-none d-lg-inline-block"><img src="{if $tab.relIcon}./templates/images/{$tab.relIcon}{elseif $tab.icon}{$tab.icon}{else}./templates/images/ico_prefs_misc.png{/if}" height="16" alt="{$tab.title}" />&nbsp; </span>{$tab.title}</a>
<img src="{if $tab.relIcon}./templates/images/{$tab.relIcon}{elseif $tab.icon}{$tab.icon}{else}./templates/images/ico_prefs_misc.png{/if}" border="0" alt="" />
{$tab.title}
</a>
</li> </li>
{/foreach} {/foreach}
</ul> </ul>
</div> </div>
<div id="pageContent"> <div class="card-body">
{include file="$page"} {include file="$page"}
<br class="clear" />
</div> </div>
</div> </div>
<div id="footer">
<a href="welcome.php?action=about&sid={$sid}">b1gMail {$bmver}</a>
</div> </div>
</div>
<footer class="footer footer-transparent d-print-none">
<div class="container-xl">
<div class="row text-center align-items-center flex-row-reverse">
<div class="col-lg-auto ms-lg-auto">
<ul class="list-inline list-inline-dots mb-0">
<li class="list-inline-item"><a href="https://www.b1gmail.eu/" target="_blank" class="link-secondary">Community</a></li>
<li class="list-inline-item"><a href="https://github.com/b1gMail-OSS/b1gMail" target="_blank" class="link-secondary" rel="noopener">Source code</a></li>
</ul>
</div>
<div class="col-12 col-lg-auto mt-3 mt-lg-0">
<ul class="list-inline list-inline-dots mb-0">
<li class="list-inline-item">Copyright &copy; {$smarty.now|date_format:"%Y"} b1gMail</li>
<li class="list-inline-item"><a href="welcome.php?action=about&sid={$sid}" class="link-secondary" rel="noopener">{$bmver}</a></li>
</ul>
</div>
</div>
</div>
</footer>
</div>
</div>
</body> </body>
</html> </html>

View file

@ -1,62 +1,58 @@
<fieldset> <fieldset>
<legend>{lng p="payment"}: {$payment.invoiceNo}</legend> <legend>{lng p="payment"}: {$payment.invoiceNo}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="invoiceno"}</label>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/ico_prefs_payments.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="180">{lng p="invoiceno"}:</td> <div class="form-control-plaintext">{$payment.invoiceNo}</div>
<td class="td2">{$payment.invoiceNo}</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="customerno"}:</td> <label class="col-sm-2 col-form-label">{lng p="customerno"}</label>
<td class="td2">{$payment.customerNo}</td> <div class="col-sm-10">
</tr> <div class="form-control-plaintext">{$payment.customerNo}</div>
<tr> </div>
<td class="td1">{lng p="user"}:</td> </div>
<td class="td2"> <div class="mb-3 row">
<img src="{$tpldir}images/user_action.png" width="16" height="16" align="absmiddle" border="0" alt="" /> <label class="col-sm-2 col-form-label">{lng p="user"}</label>
<div class="col-sm-10">
<div class="form-control-plaintext">
<a href="users.php?do=edit&id={$payment.user.id}&sid={$sid}">{$payment.user.email}</a> <a href="users.php?do=edit&id={$payment.user.id}&sid={$sid}">{$payment.user.email}</a>
({text value=$payment.user.vorname} {text value=$payment.user.nachname}) ({text value=$payment.user.vorname} {text value=$payment.user.nachname})
</td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="amount"}:</td> <div class="mb-3 row">
<td class="td2">{$payment.amount}</td> <label class="col-sm-2 col-form-label">{lng p="amount"}</label>
</tr> <div class="col-sm-10">
<tr> <div class="form-control-plaintext">{$payment.amount}</div>
<td class="td1">{lng p="paymentmethod"}:</td> </div>
<td class="td2">{$payment.method}</td> </div>
</tr> <div class="mb-3 row">
</table> <label class="col-sm-2 col-form-label">{lng p="paymentmethod"}</label>
<div class="col-sm-10">
<div class="form-control-plaintext">{$payment.method}</div>
</div>
</div>
</fieldset> </fieldset>
{if $payment.paymethod_params} {if $payment.paymethod_params}
<fieldset> <fieldset>
<legend>{lng p="details"}</legend> <legend>{lng p="details"}</legend>
<table>
{foreach from=$payment.paymethod_params key=key item=value} {foreach from=$payment.paymethod_params key=key item=value}
<tr> <div class="mb-3 row">
<td width="40">&nbsp;</td> <label class="col-sm-2 col-form-label">{text value=$key}</label>
<td class="td1" width="180">{text value=$key}</td> <div class="col-sm-10">
<td class="td2">{text value=$value}</td> <div class="form-control-plaintext">{text value=$value}</div>
</tr> </div>
</div>
{/foreach} {/foreach}
</table> </fieldset>
</fieldset>
{/if} {/if}
<p> <div class="row">
<div style="float:left" class="buttons"> <div class="col-md-4"><input class="btn" type="button" value="&laquo; {lng p="back"}" onclick="history.back(1);" /></div>
<input class="button" type="button" value=" &laquo; {lng p="back"} " onclick="history.back(1);" /> <div class="col-md-4 text-center">{if $payment.hasInvoice}<input class="btn btn-muted" type="button" value="{lng p="invoice"}" onclick="openWindow('payments.php?action=showInvoice&orderID={$payment.orderid}&sid={$sid}','invoice_{$payment.orderid}',640,480);" />{/if}</div>
</div> <div class="col-md-4 text-end">{if $payment.status==0}<input class="btn btn-primary" type="button" value="{lng p="activate"}" onclick="document.location.href='payments.php?singleAction=activate&singleID={$payment.orderid}&sid={$sid}';" />{/if}</div>
</div>
<div style="float:right" class="buttons">
{if $payment.hasInvoice}
<input class="button" type="button" value=" {lng p="invoice"} " onclick="openWindow('payments.php?action=showInvoice&orderID={$payment.orderid}&sid={$sid}','invoice_{$payment.orderid}',640,480);" />
{/if}
{if $payment.status==0}
<input class="button" type="button" value=" {lng p="activate"} " onclick="document.location.href='payments.php?singleAction=activate&singleID={$payment.orderid}&sid={$sid}';" />
{/if}
</div>
</p>

View file

@ -2,60 +2,55 @@
<legend>{lng p="accentries"}</legend> <legend>{lng p="accentries"}</legend>
<form action="payments.php?action=export&do=exportAccEntries&sid={$sid}" method="post" target="_top"> <form action="payments.php?action=export&do=exportAccEntries&sid={$sid}" method="post" target="_top">
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="from"}</label>
<td width="40" valign="top" rowspan="4"><img src="{$tpldir}images/ico_accentries.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="120">{lng p="from"}:</td>
<td class="td2">
{html_select_date prefix="start" time=$start start_year="-5" field_order="DMY" field_separator="."} {html_select_date prefix="start" time=$start start_year="-5" field_order="DMY" field_separator="."}
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="to"}:</td> <label class="col-sm-2 col-form-label">{lng p="to"}</label>
<td class="td2"> <div class="col-sm-10">
{html_select_date prefix="end" time=$end start_year="-5" field_order="DMY" field_separator="."} {html_select_date prefix="end" time=$end start_year="-5" field_order="DMY" field_separator="."}
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="account_debit"}:</td> <label class="col-sm-2 col-form-label">{lng p="account_debit"}</label>
<td class="td2"> <div class="col-sm-10">
<table> <div class="input-group mb-2">
<tr> <span class="input-group-text">{lng p="banktransfer"}</span>
<td>{lng p="banktransfer"}:</td> <input type="text" class="form-control" name="accounts[0]" value="1100" placeholder="{lng p="banktransfer"}">
<td><input type="text" name="accounts[0]" size="8" value="1100" /></td> </div>
</tr> <div class="input-group mb-2">
<tr> <span class="input-group-text">{lng p="su"}</span>
<td>{lng p="su"}:</td> <input type="text" class="form-control" name="accounts[2]" value="1100" placeholder="{lng p="su"}">
<td><input type="text" name="accounts[2]" size="8" value="1100" /></td> </div>
</tr> <div class="input-group mb-2">
<tr> <span class="input-group-text">{lng p="paypal"}</span>
<td>{lng p="paypal"}:</td> <input type="text" class="form-control" name="accounts[1]" value="1101" placeholder="{lng p="paypal"}">
<td><input type="text" name="accounts[1]" size="8" value="1101" /></td> </div>
</tr> <div class="input-group mb-2">
<tr> <span class="input-group-text">{lng p="skrill"}</span>
<td>{lng p="skrill"}:</td> <input type="text" class="form-control" name="accounts[2]" value="1100" placeholder="{lng p="skrill"}">
<td><input type="text" name="accounts[3]" size="8" value="1102" /></td> </div>
</tr>
{foreach from=$paymentMethods key=methodID item=method} {foreach from=$paymentMethods key=methodID item=method}
<tr> <div class="input-group mb-2">
<td>{text value=$method.title}</td> <span class="input-group-text">{text value=$method.title}</span>
<td><input type="text" name="accounts[-{$methodID}]" size="8" value="{$methodID+1102}" /></td> <input type="text" class="form-control" name="accounts[-{$methodID}]" value="{$methodID+1102}" placeholder="{text value=$method.title}">
</tr> </div>
{/foreach} {/foreach}
</table> </div>
</td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="account_credit"}</label>
<td class="td1">{lng p="account_credit"}:</td> <div class="col-sm-10">
<td class="td2"> <input type="text" class="form-control" name="account" value="8400" placeholder="{lng p="account_credit"}">
<input type="text" name="account" size="8" value="8400" /> </div>
</td> </div>
</tr>
</table>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="export"} " /> <input class="btn btn-primary" type="submit" value="{lng p="export"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>
@ -63,31 +58,30 @@
<legend>{lng p="invoices"}</legend> <legend>{lng p="invoices"}</legend>
<form action="payments.php?action=export&do=exportInvoices&sid={$sid}" method="post" target="_top"> <form action="payments.php?action=export&do=exportInvoices&sid={$sid}" method="post" target="_top">
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="from"}</label>
<td width="40" valign="top" rowspan="3"><img src="{$tpldir}images/ico_prefs_invoices.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="120">{lng p="from"}:</td>
<td class="td2">
{html_select_date prefix="start" time=$start start_year="-5" field_order="DMY" field_separator="."} {html_select_date prefix="start" time=$start start_year="-5" field_order="DMY" field_separator="."}
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="to"}:</td> <label class="col-sm-2 col-form-label">{lng p="to"}</label>
<td class="td2"> <div class="col-sm-10">
{html_select_date prefix="end" time=$end start_year="-5" field_order="DMY" field_separator="."} {html_select_date prefix="end" time=$end start_year="-5" field_order="DMY" field_separator="."}
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="options"}:</td> <label class="col-sm-2 col-form-label">{lng p="options"}</label>
<td class="td2"> <div class="col-sm-10">
<input type="checkbox" name="paidOnly" id="paidOnly" checked="checked" /> <label class="form-check">
<label for="paidOnly"><b>{lng p="paidonly"}</b></label> <input class="form-check-input" type="checkbox" name="paidOnly" id="paidOnly" checked="checked">
</td> <span class="form-check-label">{lng p="paidonly"}</span>
</tr> </label>
</table> </div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="export"} " /> <input class="btn btn-primary" type="submit" value="{lng p="export"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,14 +1,17 @@
<form action="payments.php?filter=true&sid={$sid}" method="post" onsubmit="if(EBID('massAction').value!='download') spin(this)" name="f1"> <form action="payments.php?filter=true&sid={$sid}" method="post" onsubmit="if(EBID('massAction').value!='download') spin(this)" name="f1">
<input type="hidden" name="page" id="page" value="{$pageNo}" /> <input type="hidden" name="page" id="page" value="{$pageNo}" />
<input type="hidden" name="sortBy" id="sortBy" value="{$sortBy}" /> <input type="hidden" name="sortBy" id="sortBy" value="{$sortBy}" />
<input type="hidden" name="sortOrder" id="sortOrder" value="{$sortOrder}" /> <input type="hidden" name="sortOrder" id="sortOrder" value="{$sortOrder}" />
<input type="hidden" name="singleAction" id="singleAction" value="" /> <input type="hidden" name="singleAction" id="singleAction" value="" />
<input type="hidden" name="singleID" id="singleID" value="" /> <input type="hidden" name="singleID" id="singleID" value="" />
<fieldset> <fieldset>
<legend>{lng p="payments"}</legend> <legend>{lng p="payments"}</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th width="20">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'payment[');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'payment[');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
@ -22,11 +25,12 @@
{if $sortBy=='created'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th> {if $sortBy=='created'}<img src="{$tpldir}images/sort_{$sortOrder}.png" border="0" alt="" width="7" height="6" align="absmiddle" />{/if}</a></th>
<th width="65">&nbsp;</th> <th width="65">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$payments item=payment} {foreach from=$payments item=payment}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="templates/images/{if $payment.status==1}yes{else}no{/if}.png" border="0" alt="" width="16" height="16" /></td> <td class="text-center">{if $payment.status==1}<i class="fa-regular fa-circle-check text-green"></i>{else}<i class="fa-regular fa-circle-xmark text-red"></i>{/if}</td>
<td align="center"><input type="checkbox" name="payment[{$payment.orderid}]" /></td> <td align="center"><input type="checkbox" name="payment[{$payment.orderid}]" /></td>
<td><a href="users.php?do=edit&id={$payment.user.id}&sid={$sid}">{email value=$payment.user.email cut=25}</a><br /> <td><a href="users.php?do=edit&id={$payment.user.id}&sid={$sid}">{email value=$payment.user.email cut=25}</a><br />
<small>{text value=$payment.user.nachname cut=20}, {text value=$payment.user.vorname cut=20}</small></td> <small>{text value=$payment.user.nachname cut=20}, {text value=$payment.user.vorname cut=20}</small></td>
@ -42,100 +46,121 @@
{/if} {/if}
</td> </td>
<td>{date timestamp=$payment.created nice=true}</td> <td>{date timestamp=$payment.created nice=true}</td>
<td> <td class="text-nowrap text-end">
{if $payment.hasInvoice}<a href="javascript:void(0);" onclick="openWindow('payments.php?action=showInvoice&orderID={$payment.orderid}&sid={$sid}','invoice_{$payment.orderid}',640,480);" title="{lng p="showinvoice"}"><img src="{$tpldir}images/file.png" border="0" alt="{lng p="showinvoice"}" width="16" height="16" /></a>{/if} <div class="btn-group btn-group-sm">
{if $payment.status==0}<a href="{if $payment.paymethod<0}payments.php?do=details&orderid={$payment.orderid}&sid={$sid}{else}javascript:singleAction('activate', '{$payment.orderid}');{/if}" title="{lng p="activatepayment"}"><img src="{$tpldir}images/unlock.png" border="0" alt="{lng p="activatepayment"}" width="16" height="16" /></a>{/if} {if $payment.hasInvoice}<a href="javascript:void(0);" onclick="openWindow('payments.php?action=showInvoice&orderID={$payment.orderid}&sid={$sid}','invoice_{$payment.orderid}',640,480);" title="{lng p="showinvoice"}" class="btn btn-sm"><i class="fa-solid fa-file-invoice-dollar"></i></a>{/if}
<a href="javascript:singleAction('delete', '{$payment.orderid}');" onclick="return confirm('{lng p="realdel"}');" title="{lng p="delete"}"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a> {if $payment.status==0}<a href="{if $payment.paymethod<0}payments.php?do=details&orderid={$payment.orderid}&sid={$sid}{else}javascript:singleAction('activate', '{$payment.orderid}');{/if}" title="{lng p="activatepayment"}" class="btn btn-sm"><i class="fa-solid fa-lock-open"></i></a>{/if}
<a href="javascript:singleAction('delete', '{$payment.orderid}');" onclick="return confirm('{lng p="realdel"}');" title="{lng p="delete"}" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="7"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" id="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="download">{lng p="downloadinvoices"}</option> <option value="download">{lng p="downloadinvoices"}</option>
<option value="activate">{lng p="activatepayment"}</option> <option value="activate">{lng p="activatepayment"}</option>
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
<div style="float:right;padding-top:3px;"> <div class="text-end">{lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp;</div>
{lng p="pages"}: {pageNav page=$pageNo pages=$pageCount on=" <span class=\"pageNav\"><b>[.t]</b></span> " off=" <span class=\"pageNav\"><a href=\"javascript:updatePage(.s);\">.t</a></span> "}&nbsp;
</div> </div>
</td> </div>
</tr> </fieldset>
</table>
</fieldset>
<fieldset> <fieldset>
<legend>{lng p="filter"}</legend> <legend>{lng p="filter"}</legend>
<table width="100%"> <div class="row">
<tr> <div class="col-md-6">
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/filter.png" border="0" alt="" width="32" height="32" /></td> <div class="mb-3 row">
<td class="td1" width="100">{lng p="status"}:</td> <label class="col-sm-4 col-form-check-label">{lng p="status"}</label>
<td class="td2"> <div class="col-sm-8">
<input type="checkbox" name="status[0]" id="status_0" {if $status[0]} checked="checked"{/if} /> <label class="form-check">
<label for="status_0"><b>{lng p="orderstatus_0"}</b></label><br /> <input class="form-check-input" type="checkbox" name="status[0]" id="status_0" {if $status[0]} checked="checked"{/if}>
<input type="checkbox" name="status[1]" id="status_1" {if $status[1]} checked="checked"{/if} /> <span class="form-check-label">{lng p="orderstatus_0"}</span>
<label for="status_1"><b>{lng p="orderstatus_1"}</b></label><br /> </label>
</td> <label class="form-check">
<td class="td1" width="130">{lng p="paymentmethods"}:</td> <input class="form-check-input" type="checkbox" name="status[1]" id="status_1" {if $status[1]} checked="checked"{/if}>
<td class="td2"> <span class="form-check-label">{lng p="orderstatus_1"}</span>
<input type="checkbox" name="paymentMethod[0]" id="paymentMethod_0" {if $paymentMethod[0]} checked="checked"{/if} /> </label>
<label for="paymentMethod_0"><b>{lng p="banktransfer"}</b></label><br /> </div>
<input type="checkbox" name="paymentMethod[1]" id="paymentMethod_1" {if $paymentMethod[1]} checked="checked"{/if} /> </div>
<label for="paymentMethod_1"><b>{lng p="paypal"}</b></label><br /> </div>
<input type="checkbox" name="paymentMethod[2]" id="paymentMethod_2" {if $paymentMethod[2]} checked="checked"{/if} /> <div class="col-md-6">
<label for="paymentMethod_2"><b>{lng p="su"}</b></label><br /> <div class="mb-3 row">
<input type="checkbox" name="paymentMethod[3]" id="paymentMethod_3" {if $paymentMethod[3]} checked="checked"{/if} /> <label class="col-sm-4 col-form-check-label">{lng p="paymentmethods"}</label>
<label for="paymentMethod_3"><b>{lng p="skrill"}</b></label><br /> <div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="paymentMethod[0]" id="paymentMethod_0" {if $paymentMethod[0]} checked="checked"{/if}>
<span class="form-check-label">{lng p="banktransfer"}</span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox" name="paymentMethod[1]" id="paymentMethod_1" {if $paymentMethod[1]} checked="checked"{/if}>
<span class="form-check-label">{lng p="paypal"}</span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox" name="paymentMethod[2]" id="paymentMethod_2" {if $paymentMethod[2]} checked="checked"{/if}>
<span class="form-check-label">{lng p="su"}</span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox" name="paymentMethod[3]" id="paymentMethod_3" {if $paymentMethod[3]} checked="checked"{/if}>
<span class="form-check-label">{lng p="skrill"}</span>
</label>
{foreach from=$payMethods key=methodID item=method} {foreach from=$payMethods key=methodID item=method}
<input type="checkbox" name="paymentMethod[-{$methodID}]" id="paymentMethod_-{$methodID}" {if $paymentMethod[$method.negID]} checked="checked"{/if} /> <label class="form-check">
<label for="paymentMethod_-{$methodID}"><b>{text value=$method.title}</b></label><br /> <input class="form-check-input" type="checkbox" name="paymentMethod[-{$methodID}]" id="paymentMethod_-{$methodID}" {if $paymentMethod[$method.negID]} checked="checked"{/if}>
<span class="form-check-label">{text value=$method.title}</span>
</label>
{/foreach} {/foreach}
</td> </div>
</tr> </div>
</table> </div>
</div>
<p align="right"> <div class="text-end">
{lng p="perpage"}: <div style="float: right;"><input class="btn btn-sm btn-primary" type="submit" value="{lng p="apply"}" /></div>
<input type="text" name="perPage" value="{$perPage}" size="5" /> <div style="float: right;"><input type="text" class="form-control form-control-sm" name="perPage" value="{$perPage}" size="5" />&nbsp; </div>
<input class="button" type="submit" value=" {lng p="apply"} " /> <div style="float: right;">{lng p="perpage"}:&nbsp; </div>
</p> </div>
</fieldset> </fieldset>
</form> </form>
<fieldset> <fieldset>
<legend>{lng p="activatepayment"}</legend> <legend>{lng p="activatepayment"}</legend>
<table> <div id="activationResult">&nbsp;</div>
<tr>
<td align="left" rowspan="3" valign="top" width="40"><img src="templates/images/ico_prefs_payments.png" border="0" alt="" width="32" height="32" /></td>
<td colspan="2">{lng p="activate_desc"}</td>
</tr>
<tr>
<td class="td1" width="120">{lng p="vkcode"}:</td>
<td class="td2"><input type="text" name="vkCode" id="vkCode" value="VK-" size="26" onkeypress="return handleActivatePaymentInput(event, 0);" /></td>
</tr>
<tr>
<td class="td1">{lng p="amount"}:</td>
<td class="td2"><input type="text" name="amount" id="amount" value="" size="10" onkeypress="return handleActivatePaymentInput(event, 1);" /> {text value=$bm_prefs.currency}</td>
</tr>
</table>
<p> <p>{lng p="activate_desc"}</p>
<div style="float:left;font-weight:bold;padding-top:4px;" id="activationResult">&nbsp;</div>
<div style="float:right"> <div class="mb-3 row">
<input class="button" type="button" onclick="activatePayment()" id="activateButton" value=" {lng p="activate"} " /> <label class="col-sm-2 col-form-label">{lng p="vkcode"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="vkCode" id="vkCode" value="VK-" onkeypress="return handleActivatePaymentInput(event, 0);" placeholder="{lng p="vkcode"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="amount"}</label>
<div class="col-sm-10">
<div class="input-group mb-2">
<input type="text" class="form-control" name="amount" id="amount" value="" onkeypress="return handleActivatePaymentInput(event, 1);" placeholder="{lng p="amount"}">
<span class="input-group-text">{text value=$bm_prefs.currency}</span>
</div>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="button" onclick="activatePayment()" id="activateButton" value="{lng p="activate"}" />
</div> </div>
</p>
</fieldset> </fieldset>

View file

@ -2,36 +2,9 @@
<legend>{lng p="installplugin"}: {text value=$meta.name}</legend> <legend>{lng p="installplugin"}: {text value=$meta.name}</legend>
<form action="plugins.php?action=install&do=installPlugin&id={$id}&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="plugins.php?action=install&do=installPlugin&id={$id}&sid={$sid}" method="post" onsubmit="spin(this)">
<p> <p>{lng p="install_desc2"}</p>
{lng p="install_desc2"}
</p>
<table>
<tr>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/plugin_add.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="150">{lng p="name"}:</td>
<td class="td2"><b>{text value=$meta.name}</b></td>
</tr>
<tr>
<td class="td1">{lng p="version"}:</td>
<td class="td2">{text value=$meta.version}</td>
</tr>
<tr>
<td class="td1">{lng p="vendor"}:</td>
<td class="td2"><a target="_blank" href="{text value=$meta.vendor_url escape=true}">{text value=$meta.vendor}</a> (<a href="mailto:{text value=$meta.vendor_mail escape=true}">{text value=$meta.vendor_mail}</a>)</td>
</tr>
<tr>
<td class="td1">{lng p="forb1gmail"}:</td>
<td class="td2">
<img src="{$tpldir}images/{if !$versionsMatch}warning{else}ok{/if}.png" border="0" alt="" align="absmiddle" width="16" height="16" />
{text value=$meta.for_b1gmail}
{if !$versionsMatch}({lng p="yourversion"}: {$b1gmailVersion}){/if}
</td>
</tr>
<tr>
<td class="td2" colspan="2" align="center">
<br />
<div class="text-center">
<div id="sigLayer"> <div id="sigLayer">
<img src="{$tpldir}images/load_16.gif" align="absmiddle" border="0" alt="" /> <img src="{$tpldir}images/load_16.gif" align="absmiddle" border="0" alt="" />
{lng p="checkingsig"} {lng p="checkingsig"}
@ -42,14 +15,39 @@
registerLoadAction('checkPluginSignature(\'{$signature}\')'); registerLoadAction('checkPluginSignature(\'{$signature}\')');
//--> //-->
</script> </script>
</td>
</tr>
</table>
<p>
<div style="float:right;">
<input class="button" type="submit" value=" {lng p="install"} " />
</div> </div>
</p>
<div class="row">
<label class="col-sm-2 col-form-label">{lng p="name"}</label>
<div class="col-sm-10">
<div class="form-control-plaintext">{text value=$meta.name}</div>
</div>
</div>
<div class="row">
<label class="col-sm-2 col-form-label">{lng p="version"}</label>
<div class="col-sm-10">
<div class="form-control-plaintext">{text value=$meta.version}</div>
</div>
</div>
<div class="row">
<label class="col-sm-2 col-form-label">{lng p="vendor"}</label>
<div class="col-sm-10">
<div class="form-control-plaintext"><a target="_blank" href="{text value=$meta.vendor_url escape=true}">{text value=$meta.vendor}</a> (<a href="mailto:{text value=$meta.vendor_mail escape=true}">{text value=$meta.vendor_mail}</a>)</div>
</div>
</div>
<div class="row">
<label class="col-sm-2 col-form-label">{lng p="forb1gmail"}</label>
<div class="col-sm-10">
<div class="form-control-plaintext">
{if !$versionsMatch}<i class="fa-solid fa-triangle-exclamation text-warning"></i>{else}<i class="fa-regular fa-circle-check text-green"></i>{/if}
{text value=$meta.for_b1gmail}
{if !$versionsMatch}({lng p="yourversion"}: {$b1gmailVersion}){/if}
</div>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="install"}" />
</div>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,10 +1 @@
<div class="note"> <div class="alert alert-info"><strong>{$title}</strong> {$text}</div>
<table>
<tr>
<td width="36" valign="top"><img src="{$tpldir}images/{$icon}.png" border="0" alt="" width="32" height="32" /></td>
<td valign="top" align="left"><b>{$title}</b><br />{$text}</td>
</tr>
</table>
</div>

View file

@ -2,26 +2,18 @@
<legend>{lng p="installplugin"}</legend> <legend>{lng p="installplugin"}</legend>
<form action="plugins.php?action=install&do=uploadPlugin&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)"> <form action="plugins.php?action=install&do=uploadPlugin&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)">
<p> <div class="alert alert-warning">{lng p="sourcewarning"}</div>
{lng p="install_desc"} <p>{lng p="install_desc"}</p>
</p>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="plugpackage"}</label>
<td width="40" valign="top"><img src="{$tpldir}images/plugin_add.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td>{lng p="plugpackage"}:<br /> <input type="file" class="form-control" name="package" accept=".bmplugin" placeholder="{lng p="plugpackage"}">
<input type="file" name="package" accept=".bmplugin" style="width:440px;" /></td> </div>
</tr> </div>
</table>
<p> <div class="text-end">
<div style="float:left;"> <input class="btn btn-primary" type="submit" value="{lng p="install"}" />
<img src="{$tpldir}images/warning.png" border="0" alt="" align="absmiddle" width="16" height="16" />
{lng p="sourcewarning"}
</div> </div>
<div style="float:right;">
<input class="button" type="submit" value=" {lng p="install"} " />
</div>
</p>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,56 +1,63 @@
<fieldset> <fieldset>
<legend>{lng p="installedplugins"}</legend> <legend>{lng p="installedplugins"}</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 20px;">&nbsp;</th>
<th>{lng p="title"}</th> <th>{lng p="title"}</th>
<th>{lng p="author"}</th> <th>{lng p="author"}</th>
<th>{lng p="info"}</th> <th>{lng p="info"}</th>
<th>{lng p="status"}</th> <th>{lng p="status"}</th>
<th>&nbsp;</th> <th>&nbsp;</th>
</tr> </tr>
</thead>
<thead>
{foreach from=$plugins item=pluginPackage key=packageSignature} {foreach from=$plugins item=pluginPackage key=packageSignature}
<tr class="tableSubHead"> <tr class="tableSubHead">
<td colspan="5"> <td colspan="5">
<a href="javascript:togglePluginPackage('{$packageSignature}');"><img src="{$tpldir}images/contract.png" border="0" alt="" align="absmiddle" id="packageImage_{$packageSignature}" heigbt="11" width="11" /></a> <a href="javascript:togglePluginPackage('{$packageSignature}');"><img src="{$tpldir}images/contract.png" border="0" alt="" align="absmiddle" id="packageImage_{$packageSignature}" heigbt="11" width="11" /></a>
{if $pluginPackage.name}<b>{lng p="package"}:</b> {text value=$pluginPackage.name}{else}{lng p="withoutpackage"}{/if} {if $pluginPackage.name}<b>{lng p="package"}:</b> {text value=$pluginPackage.name}{else}{lng p="withoutpackage"}{/if}
</td> </td>
<td> <td class="text-end">
{if $packageSignature}<a href="plugins.php?action={$action}&do=deletePackage&package={$packageSignature}&sid={$sid}" onclick="return confirm('{lng p="realpackage"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a>{else}&nbsp;{/if} {if $packageSignature}<a href="plugins.php?action={$action}&do=deletePackage&package={$packageSignature}&sid={$sid}" onclick="return confirm('{lng p="realpackage"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>{else}&nbsp;{/if}
</td> </td>
</tr> </tr>
</thead>
<tbody id="package_{$packageSignature}" style="display:;"> <tbody id="package_{$packageSignature}" style="display:;">
{foreach from=$pluginPackage.plugins item=plugin} {foreach from=$pluginPackage.plugins item=plugin}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td><img src="{$tpldir}images/plugin_{if !$plugin.installed}in{/if}active.png" border="0" alt="" width="16" height="16" /></td> <td><i class="fa-solid fa-puzzle-piece {if !$plugin.installed}text-grey{else}text-yellow{/if}"></td>
<td>{text value=$plugin.title}<br /><small>{text value=$plugin.name}</small></td> <td>
{text value=$plugin.title}<br />
<small>{text value=$plugin.name}</small>
</td>
<td>{text value=$plugin.author}</td> <td>{text value=$plugin.author}</td>
<td>{lng p="version"}: {text value=$plugin.version}<br /><small>{lng p="type"}: {$plugin.type}</small></td> <td>{lng p="version"}: {text value=$plugin.version}<br /><small>{lng p="type"}: {$plugin.type}</small></td>
<td>{if $plugin.installed}{lng p="installed"}{else}{lng p="notinstalled"}{/if}<br /> <td>{if $plugin.installed}{lng p="installed"}{else}{lng p="notinstalled"}{/if}<br />
{if $plugin.paused}<small>{lng p="paused"}</small>{/if}</td> {if $plugin.paused}<small>{lng p="paused"}</small>{/if}</td>
<td> <td class="text-nowrap text-end">
<a href="plugins.php?action={$action}&sid={$sid}&do={if $plugin.installed}de{/if}activatePlugin&plugin={$plugin.name}" title="{lng p="acdeactivate"}" onclick="return confirm('{lng p="reallyplugin"}');"><img src="{$tpldir}images/plugin_switch.png" border="0" alt="{lng p="acdeactivate"}" border="0" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
{if $plugin.installed}<a href="plugins.php?action={$action}&sid={$sid}&do={if $plugin.paused}un{/if}pausePlugin&plugin={$plugin.name}" title="{if $plugin.paused}{lng p="continue"}{else}{lng p="pause"}{/if}"><img src="{$tpldir}images/{if $plugin.paused}error{else}ok{/if}.png" border="0" alt="{if $plugin.paused}{lng p="continue"}{else}{lng p="pause"}{/if}" border="0" width="16" height="16" /></a>{/if} <a href="plugins.php?action={$action}&sid={$sid}&do={if $plugin.installed}de{/if}activatePlugin&plugin={$plugin.name}" title="{lng p="acdeactivate"}" onclick="return confirm('{lng p="reallyplugin"}');" class="btn btn-sm"><i class="fa-solid fa-toggle-off"></i></a>
{if $plugin.installed}<a href="plugins.php?action={$action}&sid={$sid}&do={if $plugin.paused}un{/if}pausePlugin&plugin={$plugin.name}" title="{if $plugin.paused}{lng p="continue"}{else}{lng p="pause"}{/if}" class="btn btn-sm">{if $plugin.paused}error{else}<i class="fa-regular fa-circle-check"></i>{/if}</a>{/if}
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody> </tbody>
{/foreach} {/foreach}
</table> </table>
</div>
</div>
</fieldset> </fieldset>
{if $reloadMenu} {if $reloadMenu}
<script> <script>
<!-- <!--
parent.frames['menu'].location.href = 'main.php?action=menu&item=4&sid={$sid}'; parent.frames['menu'].location.href = 'main.php?action=menu&item=4&sid={$sid}';
//--> //-->
</script> </script>
{/if} {/if}

View file

@ -1,49 +1,52 @@
<fieldset> <fieldset>
<legend>{lng p="updates"}</legend> <legend>{lng p="updates"}</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 20px;">&nbsp;</th>
<th>{lng p="title"}</th> <th>{lng p="title"}</th>
<th width="120">{lng p="installed"}</th> <th style="width: 120px;">{lng p="installed"}</th>
<th width="120">{lng p="current"}</th> <th style="width: 120px;">{lng p="current"}</th>
</tr> </tr>
</thead>
<thead>
{foreach from=$plugins item=pluginPackage key=packageSignature} {foreach from=$plugins item=pluginPackage key=packageSignature}
<tr class="tableSubHead"> <tr class="tableSubHead">
<td colspan="4"> <td colspan="4">
<a href="javascript:togglePluginPackage('{$packageSignature}');"><img src="{$tpldir}images/contract.png" border="0" alt="" align="absmiddle" id="packageImage_{$packageSignature}" heigbt="11" width="11" /></a> <a href="javascript:togglePluginPackage('{$packageSignature}');"><img src="{$tpldir}images/contract.png" border="0" alt="" align="absmiddle" id="packageImage_{$packageSignature}" heigbt="11" width="11" /></a>
{if $pluginPackage.name}<b>{lng p="package"}:</b> {text value=$pluginPackage.name}{else}{lng p="withoutpackage"}{/if} {if $pluginPackage.name}<b>{lng p="package"}:</b> {text value=$pluginPackage.name}{else}{lng p="withoutpackage"}{/if}
</td> </td>
</tr> </tr>
</thead>
<tbody id="package_{$packageSignature}" style="display:;"> <tbody id="package_{$packageSignature}" style="display:;">
{foreach from=$pluginPackage.plugins item=plugin} {foreach from=$pluginPackage.plugins item=plugin}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td><img src="{$tpldir}images/plugin_{if !$plugin.installed}in{/if}active.png" border="0" alt="" width="16" height="16" /></td> <td><i class="fa-solid fa-puzzle-piece {if !$plugin.installed}text-grey{else}text-yellow{/if}"></td>
<td>{text value=$plugin.title}<br /><small>{text value=$plugin.name}</small></td> <td>
{text value=$plugin.title}<br />
<small>{text value=$plugin.name}</small>
</td>
<td>{lng p="version"}: {text value=$plugin.version}</td> <td>{lng p="version"}: {text value=$plugin.version}</td>
<td id="updates_{$plugin.name}"> <td class="text-end" id="updates_{$plugin.name}">
<div align="center">
<img src="{$tpldir}images/load_16.gif" border="0" alt="" /> <img src="{$tpldir}images/load_16.gif" border="0" alt="" />
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody> </tbody>
{/foreach} {/foreach}
</table> </table>
</div>
</div>
</fieldset> </fieldset>
<script> <script>
<!-- <!--
{foreach from=$plugins item=pluginPackage key=packageSignature}{foreach from=$pluginPackage.plugins item=plugin} {foreach from=$plugins item=pluginPackage key=packageSignature}{foreach from=$pluginPackage.plugins item=plugin}
checkForPluginUpdates('{$plugin.name}'); checkForPluginUpdates('{$plugin.name}');
{/foreach}{/foreach} {/foreach}{/foreach}
//--> //-->
</script> </script>

View file

@ -2,74 +2,95 @@
<fieldset> <fieldset>
<legend>{lng p="common"}</legend> <legend>{lng p="common"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="ap_medium_limit"}</label>
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/abuse32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="ap_medium_limit"}:</td> <div class="input-group mb-2">
<td class="td2"> <span class="input-group-text"><img src="templates/images/indicator_yellow.png" border="0" alt="" align="absmiddle" /></span>
<img src="templates/images/indicator_yellow.png" border="0" alt="" align="absmiddle" /> <input type="text" class="form-control" name="ap_medium_limit" value="{text allowEmpty=true value=$bm_prefs.ap_medium_limit}" placeholder="{lng p="ap_medium_limit"}">
<input type="number" min="1" step="1" name="ap_medium_limit" value="{text allowEmpty=true value=$bm_prefs.ap_medium_limit}" style="width:60px;" /> <span class="input-group-text">{lng p="points"}</span>
{lng p="points"} </div>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="ap_hard_limit"}:</td> <label class="col-sm-2 col-form-label">{lng p="ap_medium_limit"}</label>
<td class="td2"> <div class="col-sm-10">
<img src="templates/images/indicator_red.png" border="0" alt="" align="absmiddle" /> <div class="input-group mb-2">
<input type="number" min="1" step="1" name="ap_hard_limit" value="{text allowEmpty=true value=$bm_prefs.ap_hard_limit}" style="width:60px;" /> <span class="input-group-text"><img src="templates/images/indicator_red.png" border="0" alt="" align="absmiddle" /></span>
{lng p="points"} <input type="text" class="form-control" name="ap_hard_limit" value="{text allowEmpty=true value=$bm_prefs.ap_hard_limit}" placeholder="{lng p="ap_medium_limit"}">
</td> <span class="input-group-text">{lng p="points"}</span>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="ap_expire_time"}:</td> </div>
<td class="td2"><input type="number" min="1" step="1" name="ap_expire_time" value="{text allowEmpty=true value=$bm_prefs.ap_expire_time/3600}" style="width:80px;" /> {lng p="hours"}</td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="ap_expire_time"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="ap_expire_mode"}:</td> <div class="input-group mb-2">
<td class="td2"> <input type="text" class="form-control" name="ap_hard_limit" value="{text allowEmpty=true value=$bm_prefs.ap_expire_time/3600}" placeholder="{lng p="ap_expire_time"}">
<input type="radio" name="ap_expire_mode" value="dynamic" id="ap_expire_mode_dynamic"{if $bm_prefs.ap_expire_mode=='dynamic'} checked="checked"{/if} /> <span class="input-group-text">{lng p="hours"}</span>
<label for="ap_expire_mode_dynamic">{lng p="ap_dynamic"}</label><br /> </div>
<input type="radio" name="ap_expire_mode" value="static" id="ap_expire_mode_static"{if $bm_prefs.ap_expire_mode=='static'} checked="checked"{/if} /> </div>
<label for="ap_expire_mode_static">{lng p="ap_static"}</label> </div>
</select></td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-check-label">{lng p="ap_expire_mode"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="ap_autolock"}?</td> <label class="form-check">
<td class="td2"> <input class="form-check-input" type="radio" name="ap_expire_mode" value="dynamic" id="ap_expire_mode_dynamic"{if $bm_prefs.ap_expire_mode=='dynamic'} checked="checked"{/if}>
<input name="ap_autolock"{if $bm_prefs.ap_autolock=='yes'} checked="checked"{/if} type="checkbox" id="ap_autolock" /> <span class="form-check-label">{lng p="ap_dynamic"}</span>
<label for="ap_autolock">{lng p="ap_athardlimit"}</label> </label>
</td> <label class="form-check">
</tr> <input class="form-check-input" type="radio" name="ap_expire_mode" value="static" id="ap_expire_mode_static"{if $bm_prefs.ap_expire_mode=='static'} checked="checked"{/if}>
<tr> <span class="form-check-label">{lng p="ap_static"}</span>
<td class="td1">{lng p="ap_autolock_notify"}?</td> </label>
<td class="td2"><input name="ap_autolock_notify" id="ap_autolock_notify"{if $bm_prefs.ap_autolock_notify=='yes'} checked="checked"{/if} type="checkbox" /> </div>
<label for="ap_autolock_notify"> {lng p="to2"}: </label><input type="text" name="ap_autolock_notify_to" value="{email value=$bm_prefs.ap_autolock_notify_to}" size="24" /></td> </div>
</tr> <div class="mb-3 row">
</table> <label class="col-sm-2 col-form-check-label">{lng p="ap_autolock"}</label>
<div class="col-sm-10">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="ap_autolock"{if $bm_prefs.ap_autolock=='yes'} checked="checked"{/if}>
<span class="form-check-label">{lng p="ap_athardlimit"}</span>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="ap_autolock_notify"}</label>
<div class="col-sm-10">
<div class="input-group mb-2">
<span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" name="ap_autolock_notify"{if $bm_prefs.ap_autolock_notify=='yes'} checked="checked"{/if}>
</span>
<span class="input-group-text">{lng p="to2"}:</span>
<input type="text" class="form-control" name="ap_autolock_notify_to" value="{email value=$bm_prefs.ap_autolock_notify_to}" placeholder="{lng p="ap_autolock_notify"}">
</div>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="pointtypes"}</legend> <legend>{lng p="pointtypes"}</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th>
<th>{lng p="title"}</th> <th>{lng p="title"}</th>
<th width="80">{lng p="points"}</th> <th style="width: 100px;">{lng p="points"}</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$apTypes item=apType key=apTypeID} {foreach from=$apTypes item=apType key=apTypeID}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}/images/abuse.png" border="0" alt="" width="16" height="16" /></td>
<td> <td>
{$apType.title} {$apType.title}
{if $apType.prefs} {if $apType.prefs}
<div> <div>
<table class="subTable"> <table>
{foreach from=$apType.prefs key=prefKey item=prefDetails} {foreach from=$apType.prefs key=prefKey item=prefDetails}
<tr> <tr>
<td>{$prefDetails.title}</td> <td style="width: 150px;">{$prefDetails.title}</td>
<td> <td>
{if $prefDetails.type==1} {if $prefDetails.type==1}
<input type="text" name="types[{$apTypeID}][prefs][{$prefKey}]" value="{if isset($prefDetails.value)}{text value=$prefDetails.value}{/if}" style="width:100px;" class="smallInput" /> <input type="text" name="types[{$apTypeID}][prefs][{$prefKey}]" value="{if isset($prefDetails.value)}{text value=$prefDetails.value}{/if}" style="width:100px;" class="smallInput" />
@ -81,15 +102,16 @@
</div> </div>
{/if} {/if}
</td> </td>
<td><input type="text" name="types[{$apTypeID}][points]" value="{$apType.points}" size="6" /></td> <td><input type="text" class="form-control" name="types[{$apTypeID}][points]" value="{$apType.points}" /></td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
</table> </table>
</div>
</div>
</fieldset> </fieldset>
<p> <div class="text-end">
<div style="float:right;" class="buttons"> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p>
</form> </form>

View file

@ -2,33 +2,43 @@
<legend>{lng p="edit"}</legend> <legend>{lng p="edit"}</legend>
<form action="prefs.ads.php?do=edit&save=true&id={$ad.id}&sid={$sid}" method="post" onsubmit="spin(this);"> <form action="prefs.ads.php?do=edit&save=true&id={$ad.id}&sid={$sid}" method="post" onsubmit="spin(this);">
<table width="100%"> <div class="mb-3 row">
<tr> <div class="col-sm-12">
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/ad32.png" border="0" alt="" width="32" height="32" /></td> <textarea name="code" id="code" class="form-control" style="font-family:courier;">{$ad.code}</textarea>
<td colspan="2" style="border: 1px solid #DDDDDD;background-color:#FFFFFF;"> </div>
<textarea name="code" id="code" class="plainTextArea" style="width:100%;height:120px;font-family:courier;">{$ad.code}</textarea> </div>
</td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="category"}</label>
<tr> <div class="col-sm-10">
<td class="td1" width="160">{lng p="category"}:</td> <input type="text" class="form-control" name="category" value="{if isset($ad.category)}{text value=$ad.category allowEmpty=true}{/if}" placeholder="{lng p="category"}">
<td class="td2"><input type="text" name="category" size="36" value="{if isset($ad.category)}{text value=$ad.category allowEmpty=true}{/if}" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="160">{lng p="weight"}:</td> <label class="col-sm-2 col-form-label">{lng p="weight"}</label>
<td class="td2"><input type="text" name="weight" size="4" value="{$ad.weight}" />%</td> <div class="col-sm-10">
</tr> <div class="input-group mb-2">
<tr> <input type="text" class="form-control" name="weight" value="{$ad.weight}" placeholder="{lng p="weight"}">
<td class="td1">{lng p="paused"}?</td> <span class="input-group-text">%</span>
<td class="td2"><input type="checkbox" name="paused"{if $ad.paused} checked="checked"{/if} /></td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="comment"}:</td> <div class="mb-3 row">
<td class="td2"><textarea style="width:100%;height:65px;" name="comments">{text allowEmpty=true value=$ad.comments}</textarea></td> <label class="col-sm-2 col-form-check-label">{lng p="paused"}</label>
</tr> <div class="col-sm-10">
</table> <label class="form-check">
<input class="form-check-input" type="checkbox" name="paused"{if $ad.paused} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="comment"}</label>
<div class="col-sm-10">
<textarea class="form-control" name="comments" placeholder="{lng p="comment"}">{text allowEmpty=true value=$ad.comments}</textarea>
</div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="save"} " /> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,9 +2,11 @@
<legend>{lng p="banners"}</legend> <legend>{lng p="banners"}</legend>
<form action="prefs.ads.php?sid={$sid}" method="post" name="f1" onsubmit="spin(this)"> <form action="prefs.ads.php?sid={$sid}" method="post" name="f1" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'ad_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'ad_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="banner"}</th> <th>{lng p="banner"}</th>
<th width="75">{lng p="category"}</th> <th width="75">{lng p="category"}</th>
@ -12,44 +14,46 @@
<th width="45">{lng p="views"}</th> <th width="45">{lng p="views"}</th>
<th width="100">&nbsp;</th> <th width="100">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$ads item=ad} {foreach from=$ads item=ad}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/ad.png" border="0" alt="" width="16" height="16" /></td>
<td align="center"><input type="checkbox" name="ad_{$ad.id}" /></td> <td align="center"><input type="checkbox" name="ad_{$ad.id}" /></td>
<td>{$ad.code}</td> <td>{$ad.code}</td>
<td>{text value=$ad.category cut=10}</td> <td>{text value=$ad.category cut=10}</td>
<td>{$ad.weight}%</td> <td>{$ad.weight}%</td>
<td>{$ad.views}</td> <td>{$ad.views}</td>
<td> <td class="text-nowrap">
<a href="prefs.ads.php?{if !$ad.paused}de{/if}activate={$ad.id}&sid={$sid}"><img src="{$tpldir}images/{if !$ad.paused}ok{else}error{/if}.png" width="16" height="16" alt="{if $ad.paused}{lng p="continue"}{else}{lng p="pause"}{/if}" border="0" /></a> <div class="btn-group btn-group-sm">
<a href="prefs.ads.php?reset={$ad.id}&sid={$sid}" onclick="return confirm('{lng p="reallyresetstats"}');" title="{lng p="resetstats"}"><img src="{$tpldir}images/reset_stats.png" border="0" alt="{lng p="resetstats"}" width="16" height="16" /></a> <a href="prefs.ads.php?{if !$ad.paused}de{/if}activate={$ad.id}&sid={$sid}" class="btn btn-sm">{if !$ad.paused}<i class="fa-regular fa-square-check" title="{if $ad.paused}{lng p="continue"}{else}{lng p="pause"}{/if}"></i>{else}<i class="fa-regular fa-square" title="{if $ad.paused}{lng p="continue"}{else}{lng p="pause"}{/if}"></i>{/if}</a>
<a href="prefs.ads.php?do=edit&id={$ad.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.ads.php?reset={$ad.id}&sid={$sid}" onclick="return confirm('{lng p="reallyresetstats"}');" title="{lng p="resetstats"}" class="btn btn-sm"><i class="fa-solid fa-arrow-trend-down"></i></a>
<a href="prefs.ads.php?delete={$ad.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.ads.php?do=edit&id={$ad.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
<a href="prefs.ads.php?delete={$ad.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="pause">{lng p="pause"}</option> <option value="pause">{lng p="pause"}</option>
<option value="continue">{lng p="continue"}</option> <option value="continue">{lng p="continue"}</option>
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -57,33 +61,43 @@
<legend>{lng p="addbanner"}</legend> <legend>{lng p="addbanner"}</legend>
<form action="prefs.ads.php?add=true&sid={$sid}" method="post" onsubmit="spin(this);"> <form action="prefs.ads.php?add=true&sid={$sid}" method="post" onsubmit="spin(this);">
<table width="100%"> <div class="mb-3 row">
<tr> <div class="col-sm-12">
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/ad32.png" border="0" alt="" width="32" height="32" /></td> <textarea name="code" id="code" class="form-control" style="font-family:courier;"></textarea>
<td colspan="2" style="border: 1px solid #DDDDDD;background-color:#FFFFFF;"> </div>
<textarea name="code" id="code" class="plainTextArea" style="width:100%;height:120px;font-family:courier;"></textarea> </div>
</td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="category"}</label>
<tr> <div class="col-sm-10">
<td class="td1" width="160">{lng p="category"}:</td> <input type="text" class="form-control" name="category" value="" placeholder="{lng p="category"}">
<td class="td2"><input type="text" name="category" size="36" value="" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="160">{lng p="weight"}:</td> <label class="col-sm-2 col-form-label">{lng p="weight"}</label>
<td class="td2"><input type="text" name="weight" size="4" value="100" />%</td> <div class="col-sm-10">
</tr> <div class="input-group mb-2">
<tr> <input type="text" class="form-control" name="weight" value="" placeholder="{lng p="weight"}">
<td class="td1">{lng p="paused"}?</td> <span class="input-group-text">%</span>
<td class="td2"><input type="checkbox" name="paused" /></td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="comment"}:</td> <div class="mb-3 row">
<td class="td2"><textarea style="width:100%;height:65px;" name="comments"></textarea></td> <label class="col-sm-2 col-form-check-label">{lng p="paused"}</label>
</tr> <div class="col-sm-10">
</table> <label class="form-check">
<input class="form-check-input" type="checkbox" name="paused">
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="comment"}</label>
<div class="col-sm-10">
<textarea class="form-control" name="comments" placeholder="{lng p="comment"}"></textarea>
</div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="add"} " /> <input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,91 +1,88 @@
<form action="prefs.common.php?action=caching&save=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.common.php?action=caching&save=true&sid={$sid}" method="post" onsubmit="spin(this)">
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="caching"}</legend> <legend>{lng p="cachemanager"}</legend>
<table> <div class="mb-3">
<tr> <div class="form-selectgroup form-selectgroup-boxes d-flex flex-column">
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/ico_prefs_cache.png" border="0" alt="" width="32" height="32" /></td> <label class="form-selectgroup-item flex-fill">
<td>{lng p="cachemanager"}:</td> <input class="form-selectgroup-input" type="radio" id="cache_disable" name="cache_type" value="0"{if $bm_prefs.cache_type==0} checked="checked"{/if} onchange="cachePrefs()">
<td>{lng p="prefs"}:</td> <div class="form-selectgroup-label d-flex align-items-center p-3">
</tr> <div class="me-3"><span class="form-selectgroup-check"></span></div>
<tr> <div>{lng p="ce_disable"}<br /><small>{lng p="ce_disable_desc"}</small></div>
<td valign="top" width="35%"> </div>
<table> </label>
<tr> <label class="form-selectgroup-item flex-fill">
<td valign="top" width="20" align="center"><input type="radio" id="cache_disable" name="cache_type" value="0"{if $bm_prefs.cache_type==0} checked="checked"{/if} onchange="cachePrefs()" /></td> <input class="form-selectgroup-input" type="radio" id="cache_b1gmail" name="cache_type" value="1"{if $bm_prefs.cache_type==1} checked="checked"{/if} onchange="cachePrefs()">
<td><label for="cache_disable"><b>{lng p="ce_disable"}</b></label><br /> <div class="form-selectgroup-label d-flex align-items-center p-3">
{lng p="ce_disable_desc"}</td> <div class="me-3"><span class="form-selectgroup-check"></span></div>
</tr> <div>{lng p="ce_b1gmail"}<br /><small>{lng p="ce_b1gmail_desc"}</small></div>
<tr> </div>
<td colspan="3"> </label>
&nbsp; <label class="form-selectgroup-item flex-fill">
</td> <input class="form-selectgroup-input" type="radio" id="cache_memcache" name="cache_type" value="2"{if $bm_prefs.cache_type==2} checked="checked"{/if}{if !$memcache} disabled="disabled"{/if} onchange="cachePrefs()">
</tr> <div class="form-selectgroup-label d-flex align-items-center p-3">
<tr> <div class="me-3"><span class="form-selectgroup-check"></span></div>
<td valign="top" width="20" align="center"><input type="radio" id="cache_b1gmail" name="cache_type" value="1"{if $bm_prefs.cache_type==1} checked="checked"{/if} onchange="cachePrefs()" /></td> <div>{lng p="ce_memcache"}<br /><small>{lng p="ce_memcache_desc"}</small></div>
<td><label for="cache_b1gmail"><b>{lng p="ce_b1gmail"}</b></label><br /> </div>
{lng p="ce_b1gmail_desc"}</td> </label>
</tr> </div>
<tr> </div>
<td colspan="3"> </fieldset>
&nbsp; </div>
</td> <div class="col-md-6">
</tr> <fieldset>
<tr> <legend>{lng p="prefs"}</legend>
<td valign="top" width="20" align="center"><input type="radio" id="cache_memcache" name="cache_type" value="2"{if $bm_prefs.cache_type==2} checked="checked"{/if}{if !$memcache} disabled="disabled"{/if} onchange="cachePrefs()" /></td>
<td><label for="cache_memcache"><b>{lng p="ce_memcache"}</b></label><br />
{lng p="ce_memcache_desc"}</td>
</tr>
</table>
</td>
<td valign="top">
<div id="prefs_0" style="display:{if $bm_prefs.cache_type!=0}none{/if};"> <div id="prefs_0" style="display:{if $bm_prefs.cache_type!=0}none{/if};">
<i>({lng p="none"})</i> <i>({lng p="none"})</i>
</div> </div>
<div id="prefs_3" style="display:{if $bm_prefs.cache_type==0}none{/if};"> <div id="prefs_3" style="display:{if $bm_prefs.cache_type==0}none{/if};">
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-check-label">{lng p="parseonly"}</label>
<td class="td1" width="180">{lng p="parseonly"}?</td> <div class="col-sm-8">
<td class="td2"><input type="checkbox" name="cache_parseonly"{if $bm_prefs.cache_parseonly=='yes'} checked="checked"{/if} /></td> <label class="form-check">
</tr> <input class="form-check-input" type="checkbox" name="cache_parseonly"{if $bm_prefs.cache_parseonly=='yes'} checked="checked"{/if}>
</table> </label>
</div>
</div>
</div> </div>
<div id="prefs_1" style="display:{if $bm_prefs.cache_type!=1}none{/if};"> <div id="prefs_1" style="display:{if $bm_prefs.cache_type!=1}none{/if};">
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="cachesize"}</label>
<td class="td1" width="180">{lng p="cachesize"}:</td> <div class="col-sm-8">
<td class="td2"><input type="text" name="filecache_size" value="{$bm_prefs.filecache_size/1024/1024}" size="6" /> <div class="input-group mb-2">
MB <!--<small>({lng p="inactiveonly"})</small>--></td> <input type="text" class="form-control" name="filecache_size" value="{$bm_prefs.filecache_size/1024/1024}" placeholder="{lng p="cachesize"}">
</tr> <span class="input-group-text">MB <!--<small>({lng p="inactiveonly"})</small>--></span>
</table> </div>
</div>
</div>
</div> </div>
<div id="prefs_2" style="display:{if $bm_prefs.cache_type!=2}none{/if};"> <div id="prefs_2" style="display:{if $bm_prefs.cache_type!=2}none{/if};">
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-check-label">{lng p="persistent"}</label>
<td class="td1" width="180">{lng p="persistent"}?</td> <div class="col-sm-8">
<td class="td2"><input type="checkbox" name="memcache_persistent"{if $bm_prefs.memcache_persistent=='yes'} checked="checked"{/if} /></td> <label class="form-check">
</tr> <input class="form-check-input" type="checkbox" name="memcache_persistent"{if $bm_prefs.memcache_persistent=='yes'} checked="checked"{/if}>
<tr> </label>
<td class="td1" width="180">{lng p="servers"}:</td> </div>
<td class="td2"> </div>
<textarea style="width:100%;height:80px;" name="memcache_servers">{text value=$bm_prefs.memcache_servers allowEmpty=true}</textarea> <div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="servers"}</label>
<div class="col-sm-8">
<textarea class="form-control" name="memcache_servers">{text value=$bm_prefs.memcache_servers allowEmpty=true}</textarea>
<small>{lng p="memcachesepby"}</small> <small>{lng p="memcachesepby"}</small>
</td>
</tr>
</table>
</div> </div>
</td> </div>
</tr> </div>
</table>
</fieldset> </fieldset>
<p>
<div style="float:right" class="buttons">
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p> </div>
</form>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</div>
</form>

View file

@ -1,31 +1,32 @@
<form action="prefs.common.php?action=captcha&save=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.common.php?action=captcha&save=true&sid={$sid}" method="post" onsubmit="spin(this)">
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="safecode"}</legend> <legend>{lng p="safecode"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="captchaprovider"}</label>
<td width="40" valign="top"><img src="{$tpldir}images/captcha32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="captchaprovider"}:</td> <select name="captcha_provider" class="form-select" onchange="changeCaptchaProvider(this)">
<td class="td2"><select name="captcha_provider" onchange="changeCaptchaProvider(this)">
{foreach from=$providers item=prov key=key} {foreach from=$providers item=prov key=key}
<option value="{$key}"{if $defaultProvider==$key} selected="selected"{/if}>{text value=$prov.title}</option> <option value="{$key}"{if $defaultProvider==$key} selected="selected"{/if}>{text value=$prov.title}</option>
{/foreach} {/foreach}
</select></td> </select>
</tr> </div>
</table> </div>
</fieldset> </fieldset>
</div>
<div class="col-md-6">
{foreach from=$providers item=prov key=key}{if $prov.configFields} {foreach from=$providers item=prov key=key}{if $prov.configFields}
<fieldset id="cp_{$key}" style="display:{if $key!=$defaultProvider}none{/if};"> <fieldset id="cp_{$key}" style="display:{if $key!=$defaultProvider}none{/if};">
<legend>{lng p="prefs"}: {text value=$prov.title}</legend> <legend>{lng p="prefs"}: {text value=$prov.title}</legend>
<table width="100%">
{foreach from=$prov.configFields item=fieldInfo key=fieldKey} {foreach from=$prov.configFields item=fieldInfo key=fieldKey}
<tr> <div class="mb-3 row">
<td width="220" class="td1">{$fieldInfo.title}</td> <label class="col-sm-4 col-form-label">{$fieldInfo.title}</label>
<td class="td2"> <div class="col-sm-8">
{if $fieldInfo.type==16} {if $fieldInfo.type==16}
<textarea style="width:100%;height:80px;" name="prefs[{$key}][{$fieldKey}]">{text value=$fieldInfo.value allowEmpty=true}</textarea></td> <textarea class="form-control" name="prefs[{$key}][{$fieldKey}]">{text value=$fieldInfo.value allowEmpty=true}</textarea></td>
{elseif $fieldInfo.type==8} {elseif $fieldInfo.type==8}
{foreach from=$fieldInfo.options item=optionValue key=optionKey} {foreach from=$fieldInfo.options item=optionValue key=optionKey}
<label> <label>
@ -34,26 +35,27 @@
</label> </label>
{/foreach} {/foreach}
{elseif $fieldInfo.type==4} {elseif $fieldInfo.type==4}
<select name="prefs[{$key}][{$fieldKey}]"> <select class="form-select" name="prefs[{$key}][{$fieldKey}]">
{foreach from=$fieldInfo.options item=optionValue key=optionKey} {foreach from=$fieldInfo.options item=optionValue key=optionKey}
<option value="{$optionKey}"{if $fieldInfo.value==$optionKey} selected="selected"{/if}>{text value=$optionValue}</option> <option value="{$optionKey}"{if $fieldInfo.value==$optionKey} selected="selected"{/if}>{text value=$optionValue}</option>
{/foreach} {/foreach}
</select> </select>
{elseif $fieldInfo.type==2} {elseif $fieldInfo.type==2}
<input type="checkbox" name="prefs[{$key}][{$fieldKey}]" value="1"{if $fieldInfo.value} checked="checked"{/if} /> <input type="checkbox" class="form-check" name="prefs[{$key}][{$fieldKey}]" value="1"{if $fieldInfo.value} checked="checked"{/if} />
{elseif $fieldInfo.type==1} {elseif $fieldInfo.type==1}
<input type="text" style="width:85%;" name="prefs[{$key}][{$fieldKey}]" value="{if isset($fieldInfo.value)}{text value=$fieldInfo.value allowEmpty=true}{/if}" /> <input type="text" class="form-control" name="prefs[{$key}][{$fieldKey}]" value="{if isset($fieldInfo.value)}{text value=$fieldInfo.value allowEmpty=true}{/if}" />
{/if} {/if}
</td>
</tr>
{/foreach}
</table>
</fieldset>
{/if}{/foreach}
<p>
<div style="float:right" class="buttons">
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p> </div>
{/foreach}
</fieldset>
{/if}
{/foreach}
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</div>
</form> </form>

View file

@ -1,232 +1,298 @@
<form action="prefs.common.php?save=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.common.php?save=true&sid={$sid}" method="post" onsubmit="spin(this)">
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="common"}</legend> <legend>{lng p="common"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="projecttitle"}</label>
<td width="40" valign="top" rowspan="13"><img src="{$tpldir}images/ico_prefs_common.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="projecttitle"}:</td> <input type="text" class="form-control" name="titel" value="{text allowEmpty=true value=$bm_prefs.titel}" placeholder="{lng p="projecttitle"}">
<td class="td2"><input type="text" name="titel" value="{text allowEmpty=true value=$bm_prefs.titel}" size="36" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="220">{lng p="hostname"}:</td> <label class="col-sm-4 col-form-label">{lng p="hostname"}</label>
<td class="td2"><input type="text" name="b1gmta_host" value="{text allowEmpty=true value=$bm_prefs.b1gmta_host}" size="28" /></td> <div class="col-sm-8">
</tr> <input type="text" class="form-control" name="b1gmta_host" value="{text allowEmpty=true value=$bm_prefs.b1gmta_host}" placeholder="{lng p="hostname"}">
<tr> </div>
<td class="td1" width="220">{lng p="selffolder"}:</td> </div>
<td class="td2"><input type="text" name="selffolder" value="{text allowEmpty=true value=$bm_prefs.selffolder}" size="36" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="selffolder"}</label>
<tr> <div class="col-sm-8">
<td class="td1" width="220">{lng p="selfurl"}:</td> <input type="text" class="form-control" name="selffolder" value="{text allowEmpty=true value=$bm_prefs.selffolder}" placeholder="{lng p="selffolder"}">
<td class="td2"><input type="text" name="selfurl" value="{text allowEmpty=true value=$bm_prefs.selfurl}" size="36" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="220">{lng p="mobile_url"}:</td> <label class="col-sm-4 col-form-label">{lng p="selfurl"}</label>
<td class="td2"><input type="text" name="mobile_url" value="{text allowEmpty=true value=$bm_prefs.mobile_url}" size="36" /></td> <div class="col-sm-8">
</tr> <input type="text" class="form-control" name="selfurl" value="{text allowEmpty=true value=$bm_prefs.selfurl}" placeholder="{lng p="selfurl"}">
<tr> </div>
<td class="td1" width="220">{lng p="searchengine"}:</td> </div>
<td class="td2"><input type="text" name="search_engine" value="{text allowEmpty=true value=$bm_prefs.search_engine}" size="36" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="mobile_url"}</label>
<tr> <div class="col-sm-8">
<td class="td1" width="220">{lng p="croninterval"}:</td> <input type="text" class="form-control" name="mobile_url" value="{text allowEmpty=true value=$bm_prefs.mobile_url}" placeholder="{lng p="mobile_url"}">
<td class="td2"><input type="number" min="1" step="1" name="cron_interval" value="{text allowEmpty=true value=$bm_prefs.cron_interval}" size="6" /> {lng p="seconds"}</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="220">{lng p="auto_tz"}?</td> <label class="col-sm-4 col-form-label">{lng p="searchengine"}</label>
<td class="td2"><input name="auto_tz"{if $bm_prefs.auto_tz=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="col-sm-8">
</tr> <input type="text" class="form-control" name="search_engine" value="{text allowEmpty=true value=$bm_prefs.search_engine}" placeholder="{lng p="searchengine"}">
<tr> </div>
<td class="td1" width="220">{lng p="sessioniplock"}?</td> </div>
<td class="td2"><input name="ip_lock"{if $bm_prefs.ip_lock=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="croninterval"}</label>
<tr> <div class="col-sm-8">
<td class="td1" width="220">{lng p="sessioncookielock"}?</td> <div class="input-group mb-2">
<td class="td2"><input name="cookie_lock"{if $bm_prefs.cookie_lock=='yes'} checked="checked"{/if} type="checkbox" /></td> <input type="text" class="form-control" name="cron_interval" value="{text allowEmpty=true value=$bm_prefs.cron_interval}" placeholder="{lng p="croninterval"}">
</tr> <span class="input-group-text">{lng p="seconds"}</span>
<tr> </div>
<td class="td1" width="220">{lng p="compresspages"}?</td> </div>
<td class="td2"><input name="compress_pages"{if $bm_prefs.compress_pages=='yes'} checked="checked"{/if} type="checkbox" /></td> </div>
</tr> <div class="mb-3 row">
</table> <label class="col-sm-4 col-form-check-label">{lng p="auto_tz"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="auto_tz"{if $bm_prefs.auto_tz=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="sessioniplock"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="ip_lock"{if $bm_prefs.ip_lock=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="sessioncookielock"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="cookie_lock"{if $bm_prefs.cookie_lock=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="compresspages"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="compress_pages"{if $bm_prefs.compress_pages=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</fieldset> </fieldset>
</div>
<fieldset> <div class="col-md-6">
<legend>{lng p="maintmode"}</legend>
<table>
<tr>
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/ico_prefs_cmd.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="220">{lng p="maintmode"}?</td>
<td class="td2"><input name="wartung"{if $bm_prefs.wartung=='yes'} checked="checked"{/if} type="checkbox" /></td>
</tr>
<tr>
<td class="td1" width="220">{lng p="whitelist"}:</td>
<td class="td2"><input type="text" name="wartung_whitelist" value="{text allowEmpty=true value=$wartungwhitelist}" size="36" /></td>
</tr>
</table>
</fieldset>
<fieldset> <fieldset>
<legend>{lng p="nliarea"}</legend> <legend>{lng p="nliarea"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-check-label">{lng p="domain_combobox"}</label>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/template32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="domain_combobox"}?</td> <label class="form-check">
<td class="td2"><input name="domain_combobox"{if $bm_prefs.domain_combobox=='yes'} checked="checked"{/if} type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="domain_combobox"{if $bm_prefs.domain_combobox=='yes'} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="redirectmobile"}?</td> </div>
<td class="td2"><input name="redirect_mobile"{if $bm_prefs.redirect_mobile=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-check-label">{lng p="redirectmobile"}</label>
<tr> <div class="col-sm-8">
<td class="td1">{lng p="contactform"}?</td> <label class="form-check">
<td class="td2"><input name="contactform" id="contactform"{if $bm_prefs.contactform=='yes'} checked="checked"{/if} type="checkbox" /> <input class="form-check-input" type="checkbox" name="redirect_mobile"{if $bm_prefs.redirect_mobile=='yes'} checked="checked"{/if}>
<label for="contactform"> {lng p="to2"}: </label><input type="text" name="contactform_to" value="{email value=$bm_prefs.contactform_to}" size="24" /></td> </label>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="contactform_name"}?</td> <div class="mb-3 row">
<td class="td2"><input name="contactform_name"{if $bm_prefs.contactform_name=='yes'} checked="checked"{/if} type="checkbox" /></td> <label class="col-sm-4 col-form-label">{lng p="contactform"}</label>
</tr> <div class="col-sm-8">
<tr> <div class="input-group mb-2">
<td class="td1">{lng p="contactform_subject"}?</td> <span class="input-group-text">
<td class="td2"><input name="contactform_subject"{if $bm_prefs.contactform_subject=='yes'} checked="checked"{/if} type="checkbox" /> <input class="form-check-input m-0" type="checkbox" name="contactform"{if $bm_prefs.contactform=='yes'} checked="checked"{/if}>
&nbsp; </span>
<small>{lng p="cfs_note"} <span class="input-group-text">{lng p="to2"}:</span>
<a href="prefs.languages.php?action=texts&sid={$sid}#contact_subjects">&raquo; {lng p="customtexts"}</a></small></td> <input type="text" class="form-control" name="contactform_to" value="{email value=$bm_prefs.contactform_to}" placeholder="{lng p="contactform"}">
</tr> </div>
</table> </div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="contactform_name"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="contactform_name"{if $bm_prefs.contactform_name=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="contactform_subject"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="contactform_subject"{if $bm_prefs.contactform_subject=='yes'} checked="checked"{/if}>
<span class="form-check-label">{lng p="cfs_note"}<a href="prefs.languages.php?action=texts&sid={$sid}#contact_subjects">&raquo; {lng p="customtexts"}</a></span>
</label>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="ssl"}</legend> <legend>{lng p="ssl"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="ssl_url"}</label>
<td width="40" valign="top" rowspan="4"><img src="{$tpldir}images/ico_prefs_ssl.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="ssl_url"}:</td> <input type="text" class="form-control" name="ssl_url" value="{text allowEmpty=true value=$bm_prefs.ssl_url}" placeholder="{lng p="ssl_url"}">
<td class="td2"><input type="text" name="ssl_url" value="{text allowEmpty=true value=$bm_prefs.ssl_url}" size="36" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="220">{lng p="ssl_login_option"}?</td> <label class="col-sm-4 col-form-check-label">{lng p="ssl_login_option"}</label>
<td class="td2"><input name="ssl_login_option"{if $bm_prefs.ssl_login_option=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="col-sm-8">
</tr> <label class="form-check">
<tr> <input class="form-check-input" type="checkbox" name="ssl_login_option"{if $bm_prefs.ssl_login_option=='yes'} checked="checked"{/if}>
<td class="td1" width="220">{lng p="ssl_login_enable"}?</td> </label>
<td class="td2"><input name="ssl_login_enable"{if $bm_prefs.ssl_login_enable=='yes'} checked="checked"{/if} type="checkbox" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="220">{lng p="ssl_signup_enable"}?</td> <label class="col-sm-4 col-form-check-label">{lng p="ssl_login_enable"}</label>
<td class="td2"><input name="ssl_signup_enable"{if $bm_prefs.ssl_signup_enable=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="col-sm-8">
</tr> <label class="form-check">
</table> <input class="form-check-input" type="checkbox" name="ssl_login_enable"{if $bm_prefs.ssl_login_enable=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="ssl_signup_enable"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="ssl_signup_enable"{if $bm_prefs.ssl_signup_enable=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="datastorage"}</legend> <legend>{lng p="datastorage"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="datafolder"}</label>
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/ico_prefs_storage.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="datafolder"}:</td> <input type="text" class="form-control" name="datafolder" value="{text allowEmpty=true value=$bm_prefs.datafolder}" placeholder="{lng p="datafolder"}">
<td class="td2"><input type="text" name="datafolder" value="{text allowEmpty=true value=$bm_prefs.datafolder}" size="36" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="220">{lng p="structstorage"}:</td> <label class="col-sm-4 col-form-check-label">{lng p="structstorage"}</label>
<td class="td2"><input type="checkbox" name="structstorage"{if $bm_prefs.structstorage=='yes'&&!$safemode} checked="checked"{/if}{if $safemode} disabled="disabled"{/if} /></td> <div class="col-sm-8">
</tr> <input class="form-check-input" type="checkbox" name="structstorage"{if $bm_prefs.structstorage=='yes'&&!$safemode} checked="checked"{/if}>
</table> </div>
</div>
</fieldset> </fieldset>
</div>
</div>
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="logs"}</legend> <legend>{lng p="logs"}</legend>
<table>
<tr>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/filter.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="220">{lng p="log_autodelete"}:</td>
<td class="td2">
<input type="checkbox" id="logs_autodelete" name="logs_autodelete"{if $bm_prefs.logs_autodelete=='yes'} checked="checked"{/if} />
<label for="logs_autodelete">{lng p="enableolder"}</label>
<input type="number" name="logs_autodelete_days" value="{if isset($bm_prefs.logs_autodelete_days)}{text value=$bm_prefs.logs_autodelete_days}{/if}" size="4" min="1" step="1" />
{lng p="days"}<br />
<input type="checkbox" id="logs_autodelete_archive" name="logs_autodelete_archive"{if $bm_prefs.logs_autodelete_archive=='yes'} checked="checked"{/if} />
<label for="logs_autodelete_archive">{lng p="savearc"}</label>
</td>
</tr>
</table>
</fieldset>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="log_autodelete"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" name="logs_autodelete"{if $bm_prefs.logs_autodelete=='yes'} checked="checked"{/if}>
</span>
<span class="input-group-text">{lng p="enableolder"}:</span>
<input type="text" class="form-control" name="logs_autodelete_days" value="{if isset($bm_prefs.logs_autodelete_days)}{text value=$bm_prefs.logs_autodelete_days}{/if}" placeholder="{lng p="contactform"}">
<span class="input-group-text">{lng p="days"}</span>
</div>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="savearc"}</label>
<div class="col-sm-8">
<input class="form-check-input" type="checkbox" name="logs_autodelete_archive"{if $bm_prefs.logs_autodelete_archive=='yes'&&!$safemode} checked="checked"{/if}>
</div>
</label>
</div>
</fieldset>
</div>
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="users"}</legend> <legend>{lng p="users"}</legend>
<table>
<tr>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/ico_prefs_users.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="220">{lng p="logouturl"}:</td>
<td class="td2"><input type="text" name="logouturl" value="{text allowEmpty=true value=$bm_prefs.logouturl}" size="36" /></td>
</tr>
<tr>
<td class="td1" width="220">{lng p="savehistory"}?</td>
<td class="td2"><input name="contact_history"{if $bm_prefs.contact_history=='yes'} checked="checked"{/if} type="checkbox" /></td>
</tr>
<tr>
<td class="td1" width="220">{lng p="gutregged"}?</td>
<td class="td2"><input name="gut_regged"{if $bm_prefs.gut_regged=='yes'} checked="checked"{/if} type="checkbox" /></td>
</tr>
<tr>
<td class="td1" width="220">{lng p="autocancel"}?</td>
<td class="td2"><input name="autocancel"{if $bm_prefs.autocancel=='yes'} checked="checked"{/if} type="checkbox" /></td>
</tr>
</table>
</fieldset>
<fieldset> <div class="mb-3 row">
<legend>{lng p="notifications"}</legend> <label class="col-sm-4 col-form-label">{lng p="logouturl"}</label>
<table> <div class="col-sm-8">
<tr> <input type="text" class="form-control" name="logouturl" value="{text allowEmpty=true value=$bm_prefs.logouturl}" placeholder="{lng p="logouturl"}">
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/ico_notify.png" border="0" alt="" width="32" height="32" /></td> </div>
<td class="td1" width="220">{lng p="notifyinterval"}:</td> </div>
<td class="td2"><input type="number" name="notify_interval" value="{$bm_prefs.notify_interval}" size="6" min="1" step="1" /> {lng p="seconds"}</td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-check-label">{lng p="savehistory"}</label>
<tr> <div class="col-sm-8">
<td class="td1" width="220">{lng p="notifylifetime"}:</td> <label class="form-check">
<td class="td2"><input type="number" name="notify_lifetime" value="{$bm_prefs.notify_lifetime}" size="6" min="1" step="1" /> {lng p="days2"}</td> <input class="form-check-input" type="checkbox" name="contact_history"{if $bm_prefs.contact_history=='yes'} checked="checked"{/if}>
</tr> </label>
</table> </div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="gutregged"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="gut_regged"{if $bm_prefs.gut_regged=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="autocancel"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="autocancel"{if $bm_prefs.autocancel=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</fieldset> </fieldset>
</div>
</div>
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="defaults"}</legend> <legend>{lng p="defaults"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="language"}</label>
<td width="40" valign="top" rowspan="7"><img src="{$tpldir}images/ico_prefs_defaults.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="language"}:</td> <select name="language" class="form-select">
<td class="td2"><select name="language">
{foreach from=$languages item=lang key=langID} {foreach from=$languages item=lang key=langID}
<option value="{$langID}"{if $langID==$bm_prefs.language} selected="selected"{/if}>{text value=$lang.title}</option> <option value="{$langID}"{if $langID==$bm_prefs.language} selected="selected"{/if}>{text value=$lang.title}</option>
{/foreach} {/foreach}
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="country"}:</td> <div class="mb-3 row">
<td class="td2"><select name="std_land"> <label class="col-sm-4 col-form-label">{lng p="country"}</label>
<div class="col-sm-8">
<select name="std_land" class="form-select">
{foreach from=$countries item=country key=countryID} {foreach from=$countries item=country key=countryID}
<option value="{$countryID}"{if $countryID==$bm_prefs.std_land} selected="selected"{/if}>{text value=$country}</option> <option value="{$countryID}"{if $countryID==$bm_prefs.std_land} selected="selected"{/if}>{text value=$country}</option>
{/foreach} {/foreach}
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="dateformat"}:</td> <div class="mb-3 row">
<td class="td2"><input type="text" name="datumsformat" value="{$bm_prefs.datumsformat}" size="16" /></td> <label class="col-sm-4 col-form-label">{lng p="dateformat"}</label><div class="col-sm-8">
</tr> <input type="text" class="form-control" name="datumsformat" value="{$bm_prefs.datumsformat}" placeholder="{lng p="dateformat"}">
<tr> </div>
<td class="td1">{lng p="itemsperpage"}:</td> </div>
<td class="td2"><input type="number" min="1" step="1" name="ordner_proseite" value="{$bm_prefs.ordner_proseite}" size="6" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="itemsperpage"}</label>
<tr> <div class="col-sm-8">
<td class="td1">{lng p="mail_groupmode"}:</td> <input type="number" min="1" step="1" class="form-control" name="ordner_proseite" value="{$bm_prefs.ordner_proseite}" placeholder="{lng p="itemsperpage"}">
<td class="td2"><select name="mail_groupmode"> </div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="mail_groupmode"}</label>
<div class="col-sm-8">
<select name="mail_groupmode" class="form-select">
<option value="-"{if $bm_prefs.mail_groupmode=='-'} selected="selected"{/if}>------------</option> <option value="-"{if $bm_prefs.mail_groupmode=='-'} selected="selected"{/if}>------------</option>
<optgroup label="{lng p="props"}"> <optgroup label="{lng p="props"}">
@ -243,26 +309,75 @@
<option value="attach"{if $bm_prefs.mail_groupmode=='attach'} selected="selected"{/if}>{lng p="attachment"}</option> <option value="attach"{if $bm_prefs.mail_groupmode=='attach'} selected="selected"{/if}>{lng p="attachment"}</option>
<option value="color"{if $bm_prefs.mail_groupmode=='color'} selected="selected"{/if}>{lng p="color"}</option> <option value="color"{if $bm_prefs.mail_groupmode=='color'} selected="selected"{/if}>{lng p="color"}</option>
</optgroup> </optgroup>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="calendarviewmode"}:</td> <div class="mb-3 row">
<td class="td2"><select name="calendar_defaultviewmode"> <label class="col-sm-4 col-form-label">{lng p="calendarviewmode"}</label>
<div class="col-sm-8">
<select name="calendar_defaultviewmode" class="form-select">
<option value="day"{if $bm_prefs.calendar_defaultviewmode=='day'} selected="selected"{/if}>{lng p="day"}</option> <option value="day"{if $bm_prefs.calendar_defaultviewmode=='day'} selected="selected"{/if}>{lng p="day"}</option>
<option value="week"{if $bm_prefs.calendar_defaultviewmode=='week'} selected="selected"{/if}>{lng p="week"}</option> <option value="week"{if $bm_prefs.calendar_defaultviewmode=='week'} selected="selected"{/if}>{lng p="week"}</option>
<option value="month"{if $bm_prefs.calendar_defaultviewmode=='month'} selected="selected"{/if}>{lng p="month"}</option> <option value="month"{if $bm_prefs.calendar_defaultviewmode=='month'} selected="selected"{/if}>{lng p="month"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="hotkeys"}?</td> <div class="mb-3 row">
<td class="td2"><input name="hotkeys_default"{if $bm_prefs.hotkeys_default=='yes'} checked="checked"{/if} type="checkbox" /></td> <label class="col-sm-4 col-form-check-label">{lng p="hotkeys"}</label>
</tr> <div class="col-sm-8">
</table> <label class="form-check">
<input class="form-check-input" type="checkbox" name="hotkeys_default"{if $bm_prefs.hotkeys_default=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</fieldset>
</div>
<div class="col-md-6">
<fieldset>
<legend>{lng p="maintmode"}</legend>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="maintmode"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="wartung"{if $bm_prefs.wartung=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="whitelist"}</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="wartung_whitelist" value="{text allowEmpty=true value=$wartungwhitelist}" placeholder="{lng p="whitelist"}">
</div>
</div>
</fieldset> </fieldset>
<p> <fieldset>
<div style="float:right;" class="buttons"> <legend>{lng p="notifications"}</legend>
<input class="button" type="submit" value=" {lng p="save"} " />
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="notifyinterval"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<input type="number" class="form-control" name="notify_interval" value="{$bm_prefs.notify_interval}" placeholder="{lng p="notifyinterval"}">
<span class="input-group-text">{lng p="seconds"}</span>
</div>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="notifylifetime"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<input type="number" class="form-control" name="notify_lifetime" value="{$bm_prefs.notify_lifetime}" placeholder="{lng p="notifylifetime"}">
<span class="input-group-text">{lng p="days2"}</span>
</div>
</div>
</div>
</fieldset>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</div> </div>
</p>
</form> </form>

View file

@ -2,24 +2,32 @@
<legend>{lng p="edit"}</legend> <legend>{lng p="edit"}</legend>
<form action="prefs.countries.php?do=edit&id={$country.id}&save=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.countries.php?do=edit&id={$country.id}&save=true&sid={$sid}" method="post" onsubmit="spin(this)">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="country"}</label>
<td width="40" valign="top" rowspan="3"><img src="{$tpldir}images/country_add.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="country"}:</td> <input type="text" class="form-control" name="land" value="{$country.land}" placeholder="{lng p="country"}">
<td class="td2"><input type="text" style="width:85%;" name="land" value="{$country.land}" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="eucountry"}?</td> <label class="col-sm-2 col-form-check-label">{lng p="eucountry"}</label>
<td class="td2"><input type="checkbox" name="is_eu"{if $country.is_eu=='yes'} checked="checked"{/if} /></td> <div class="col-sm-10">
</tr> <label class="form-check">
<tr> <input class="form-check-input" type="checkbox" name="is_eu"{if $country.is_eu=='yes'} checked="checked"{/if}>
<td class="td1">{lng p="vatrate"}:</td> </label>
<td class="td2"><input type="number" min="0" max="100" step="any" size="6" name="vat" value="{$country.vat}" /> %</td> </div>
</tr> </div>
</table> <div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="vatrate"}</label>
<div class="col-sm-10">
<div class="input-group mb-2">
<input type="text" class="form-control" name="cron_interval" value="{$country.vat}" min="0" max="100" step="any" placeholder="{lng p="vatrate"}">
<span class="input-group-text">%</span>
</div>
</div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="save"} " /> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,50 +2,54 @@
<legend>{lng p="countries"}</legend> <legend>{lng p="countries"}</legend>
<form action="prefs.countries.php?sid={$sid}" name="f1" method="post" onsubmit="spin(this)"> <form action="prefs.countries.php?sid={$sid}" name="f1" method="post" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 25px; text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'country_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'country_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="country"}</th> <th>{lng p="country"}</th>
<th width="80" style="text-align:center;">{lng p="plzdb"}?</th> <th style="width: 80px;" style="text-align:center;">{lng p="plzdb"}?</th>
<th width="80" style="text-align:center;">{lng p="eucountry"}?</th> <th style="width: 80px;" style="text-align:center;">{lng p="eucountry"}?</th>
<th width="80" style="text-align:center;">{lng p="vatrate"}</th> <th style="width: 80px;" style="text-align:center;">{lng p="vatrate"}</th>
<th width="60">&nbsp;</th> <th style="width: 60px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$countries item=country} {foreach from=$countries item=country}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/country.png" border="0" alt="" width="16" height="16" /></td> <td class="text-center"><input type="checkbox" name="country_{$country.id}" /></td>
<td align="center"><input type="checkbox" name="country_{$country.id}" /></td>
<td>{$country.land}</td> <td>{$country.land}</td>
<td style="text-align:center;">{if $country.plzDB}<img src="{$tpldir}images/ok.png" border="0" alt="" width="16" height="16" />{/if}</td> <td class="text-center">{if $country.plzDB}<i class="fa-regular fa-square-check"></i>{/if}</td>
<td style="text-align:center;">{if $country.is_eu}<img src="{$tpldir}images/ok.png" border="0" alt="" width="16" height="16" />{/if}</td> <td class="text-center">{if $country.is_eu}<i class="fa-regular fa-square-check"></i>{/if}</td>
<td style="text-align:center;">{if $country.vat}{$country.vat} %{/if}</td> <td class="text-center">{if $country.vat}{$country.vat} %{/if}</td>
<td> <td class="text-nowrap">
<a href="prefs.countries.php?do=edit&id={$country.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
<a href="prefs.countries.php?delete={$country.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a> <a href="prefs.countries.php?do=edit&id={$country.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
<a href="prefs.countries.php?delete={$country.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -53,16 +57,15 @@
<legend>{lng p="addcountry"}</legend> <legend>{lng p="addcountry"}</legend>
<form action="prefs.countries.php?add=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.countries.php?add=true&sid={$sid}" method="post" onsubmit="spin(this)">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="country"}</label>
<td width="40" valign="top" rowspan="1"><img src="{$tpldir}images/country_add.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="country"}:</td> <input type="text" class="form-control" name="land" value="" placeholder="{lng p="country"}">
<td class="td2"><input type="text" style="width:85%;" name="land" value="" /></td> </div>
</tr> </div>
</table>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="add"} " /> <input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,91 +2,109 @@
<legend>{lng p="edit"}</legend> <legend>{lng p="edit"}</legend>
<form action="prefs.coupons.php?do=edit&save=true&id={$coupon.id}&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.coupons.php?do=edit&save=true&id={$coupon.id}&sid={$sid}" method="post" onsubmit="spin(this)">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="code"}</label>
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/coupon32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="code"}:</td> <input type="text" class="form-control" name="code" value="{if isset($coupon.code)}{text value=$coupon.code}{/if}" placeholder="{lng p="code"}">
<td class="td2"> </div>
<input type="text" name="code" value="{if isset($coupon.code)}{text value=$coupon.code}{/if}" style="width:85%;" /> </div>
</td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="count"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="count"}:</td> <div class="input-group mb-2">
<td class="td2"> <span class="input-group-text">
<input type="checkbox" onchange="EBID('count').value=this.checked?'-1':'0';"{if $coupon.anzahl==-1} checked="checked"{/if} id="count_unlim" /> <input class="form-check-input m-0" type="checkbox" onchange="EBID('count').value=this.checked?'-1':'0';"{if $coupon.anzahl==-1} checked="checked"{/if} id="count_unlim" />
<label for="count_unlim"><b>{lng p="unlimited"}</b></label> </span>
{lng p="or"} <span class="input-group-text">{lng p="unlimited"} {lng p="or"}</span>
<input type="text" size="6" name="anzahl" id="count" value="{if isset($coupon.anzahl)}{text value=$coupon.anzahl}{/if}" onkeyup="EBID('count_unlim').checked=this.value=='-1';" /> <input type="text" class="form-control" name="anzahl" id="count" value="{if isset($coupon.anzahl)}{text value=$coupon.anzahl}{/if}" onkeyup="EBID('count_unlim').checked=this.value=='-1';" />
</td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="from"}:</td> <div class="mb-3 row">
<td class="td2"> <label class="col-sm-2 col-form-label">{lng p="from"}</label>
<input type="checkbox"{if $coupon.von==-1} checked="checked"{/if} id="from_unlim" name="von_unlim" /> <div class="col-sm-10">
<label for="from_unlim"><b>{lng p="unlimited"}</b></label> <div class="input-group mb-2">
{lng p="or"} <span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" id="from_unlim" name="von_unlim"{if $coupon.von==-1} checked="checked"{/if} />
</span>
<span class="input-group-text">{lng p="now"} {lng p="or"}</span>
{if $coupon.von!=-1}{html_select_date prefix="von" start_year="-5" field_order="DMY" field_separator="." time=$coupon.von}, {if $coupon.von!=-1}{html_select_date prefix="von" start_year="-5" field_order="DMY" field_separator="." time=$coupon.von},
{html_select_time prefix="von" display_seconds=false time=$coupon.von}{else}{html_select_date prefix="von" start_year="-5" field_order="DMY" field_separator="."}, {html_select_time prefix="von" display_seconds=false time=$coupon.von}{else}{html_select_date prefix="von" start_year="-5" field_order="DMY" field_separator="."},
{html_select_time prefix="von" display_seconds=false}{/if} {html_select_time prefix="von" display_seconds=false}{/if}
</td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="to"}:</td> <div class="mb-3 row">
<td class="td2"> <label class="col-sm-2 col-form-label">{lng p="to"}</label>
<input type="checkbox"{if $coupon.bis==-1} checked="checked"{/if} id="to_unlim" name="bis_unlim" /> <div class="col-sm-10">
<label for="to_unlim"><b>{lng p="unlimited"}</b></label> <div class="input-group mb-2">
{lng p="or"} <span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" id="to_unlim" name="bis_unlim"{if $coupon.bis==-1} checked="checked"{/if} />
</span>
<span class="input-group-text">{lng p="now"} {lng p="or"}</span>
{if $coupon.bis!=-1}{html_select_date prefix="bis" end_year="+5" field_order="DMY" field_separator="." time=$coupon.bis}, {if $coupon.bis!=-1}{html_select_date prefix="bis" end_year="+5" field_order="DMY" field_separator="." time=$coupon.bis},
{html_select_time prefix="bis" display_seconds=false time=$coupon.bis}{else}{html_select_date prefix="bis" end_year="+5" field_order="DMY" field_separator="."}, {html_select_time prefix="bis" display_seconds=false time=$coupon.bis}{else}{html_select_date prefix="bis" end_year="+5" field_order="DMY" field_separator="."},
{html_select_time prefix="bis" display_seconds=false}{/if} {html_select_time prefix="bis" display_seconds=false}{/if}
</td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="validity"}:</td> <div class="mb-3 row">
<td class="td2"> <label class="col-sm-2 col-form-check-label">{lng p="validity"}</label>
<input type="checkbox"{if $coupon.valid_signup=='yes'} checked="checked"{/if} id="valid_signup" name="valid_signup" /> <div class="col-sm-10">
<label for="valid_signup"><b>{lng p="signup"}</b></label><br /> <label class="form-check">
<input type="checkbox"{if $coupon.valid_loggedin=='yes'} checked="checked"{/if} id="valid_loggedin" name="valid_loggedin" /> <input class="form-check-input" type="checkbox" name="valid_signup"{if $coupon.valid_signup=='yes'} checked="checked"{/if}>
<label for="valid_loggedin"><b>{lng p="li"}</b></label> <span class="form-check-label">{lng p="signup"}</span>
</td> </label>
</tr> <label class="form-check">
<tr> <input class="form-check-input" type="checkbox" name="valid_loggedin"{if $coupon.valid_loggedin=='yes'} checked="checked"{/if}>
<td class="td1">{lng p="benefit"}:</td> <span class="form-check-label">{lng p="li"}</span>
<td class="td2"> </label>
<div> </div>
<input type="checkbox"{if $coupon.ver.gruppe} checked="checked"{/if} name="ver_gruppe" id="ver_gruppe" /> </div>
<label for="ver_gruppe"><b>{lng p="movetogroup"}:</b></label> <div class="mb-3 row">
<select name="ver_gruppe_id"> <label class="col-sm-2 col-form-label">{lng p="benefit"}</label>
<div class="col-sm-10">
<div class="input-group mb-2">
<span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" name="ver_gruppe"{if $coupon.ver.gruppe} checked="checked"{/if} />
</span>
<span class="input-group-text">{lng p="movetogroup"}</span>
<select name="ver_gruppe_id" class="form-select">
{foreach from=$groups item=group} {foreach from=$groups item=group}
<option value="{$group.id}"{if $group.id==$coupon.ver.gruppe} selected="selected"{/if}>{text value=$group.title}</option> <option value="{$group.id}"{if $group.id==$coupon.ver.gruppe} selected="selected"{/if}>{text value=$group.title}</option>
{/foreach} {/foreach}
</select> </select>
</div> </div>
<div class="input-group mb-2">
<div> <span class="input-group-text">
<input type="checkbox"{if $coupon.ver.sms} checked="checked"{/if} name="ver_credits" id="ver_credits" /> <input class="form-check-input m-0" type="checkbox" name="ver_credits"{if $coupon.ver.sms} checked="checked"{/if} />
<label for="ver_credits"><b>{lng p="addcredits"}:</b></label> </span>
<input type="text" name="ver_credits_count" value="{if $coupon.ver.sms}{text value=$coupon.ver.sms}{else}5{/if}" size="6" /> <span class="input-group-text">{lng p="addcredits"}</span>
<input class="form-control" type="text" name="ver_credits_count" value="{if $coupon.ver.sms}{text value=$coupon.ver.sms}{else}5{/if}" />
</div>
</div>
</div> </div>
</td>
</tr>
</table>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="save"} " /> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="redeemedby"}</legend> <legend>{lng p="redeemedby"}</legend>
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="50">{lng p="id"}</td> <th style="width: 50px;">{lng p="id"}</td>
<th width="20%">{lng p="email"}</td> <th style="width: 20%;">{lng p="email"}</td>
<th>{lng p="name"}</td> <th>{lng p="name"}</td>
</tr> </tr>
</thead>
<tbody>
{foreach from=$usedBy item=user} {foreach from=$usedBy item=user}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
@ -95,5 +113,8 @@
<td>{text value=$user.nachname cut=20}, {text value=$user.vorname cut=20}<br /><small>{text value=$user.strasse cut=20} {text value=$user.hnr cut=5}, {text value=$user.plz cut=8} {text value=$user.ort cut=20}</small></td> <td>{text value=$user.nachname cut=20}, {text value=$user.vorname cut=20}<br /><small>{text value=$user.strasse cut=20} {text value=$user.hnr cut=5}, {text value=$user.plz cut=8} {text value=$user.ort cut=20}</small></td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
</table> </table>
</div>
</div>
</fieldset> </fieldset>

View file

@ -2,56 +2,57 @@
<legend>{lng p="coupons"}</legend> <legend>{lng p="coupons"}</legend>
<form action="prefs.coupons.php?sid={$sid}" method="post" name="f1" onsubmit="spin(this)"> <form action="prefs.coupons.php?sid={$sid}" method="post" name="f1" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 20px; text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'coupon_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'coupon_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="code"}</th> <th>{lng p="code"}</th>
<th>{lng p="validitytime"}</th> <th style="width: 200px;">{lng p="validitytime"}</th>
<th width="160">{lng p="validity"}</th> <th style="width: 200px;">{lng p="validity"}</th>
<th width="160">{lng p="used3"} / {lng p="count"}</th> <th style="width: 160px;">{lng p="used3"} / {lng p="count"}</th>
<th width="60">&nbsp;</th> <th style="width: 60px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$coupons item=coupon} {foreach from=$coupons item=coupon}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/coupon.png" border="0" alt="" width="16" height="16" /></td> <td class="text-center"><input type="checkbox" name="coupon_{$coupon.id}" /></td>
<td align="center"><input type="checkbox" name="coupon_{$coupon.id}" /></td> <td>{text value=$coupon.code}<br /><small>{if $coupon.ver.sms}{lng p="addcredits"}: {$coupon.ver.sms}{/if}{if $coupon.ver.gruppe}{if $coupon.ver.sms}, {/if}{lng p="movetogroup"}: {$groups[$coupon.ver.gruppe].title}{/if}</small></td>
<td>{text value=$coupon.code}<br /> <td>{lng p="to"} {if $coupon.bis==-1}({lng p="unlimited"}){else}{date timestamp=$coupon.bis}{/if}<br /><small>{lng p="from"} {if $coupon.von==-1}({lng p="unlimited"}){else}{date timestamp=$coupon.von}{/if}</small></td>
<small>{if $coupon.ver.sms}{lng p="addcredits"}: {$coupon.ver.sms}{/if}{if $coupon.ver.gruppe}{if $coupon.ver.sms}, {/if}{lng p="movetogroup"}: {$groups[$coupon.ver.gruppe].title}{/if}</small></td>
<td>{lng p="to"} {if $coupon.bis==-1}({lng p="unlimited"}){else}{date timestamp=$coupon.bis}{/if}
<br /><small>{lng p="from"} {if $coupon.von==-1}({lng p="unlimited"}){else}{date timestamp=$coupon.von}{/if}</small></td>
<td> <td>
{if $coupon.valid_signup}{lng p="signup"}{if $coupon.valid_loggedin},{/if}{/if} {if $coupon.valid_signup}{lng p="signup"}{if $coupon.valid_loggedin},{/if}{/if}
{if $coupon.valid_loggedin}{lng p="li"}{/if} {if $coupon.valid_loggedin}{lng p="li"}{/if}
</td> </td>
<td>{$coupon.used} <td>{$coupon.used} / {if $coupon.anzahl==-1}({lng p="unlimited"}){else}{$coupon.anzahl}{/if}</td>
/ {if $coupon.anzahl==-1}({lng p="unlimited"}){else}{$coupon.anzahl}{/if}</td> <td class="text-nowrap">
<td> <div class="btn-group btn-group-sm">
<a href="prefs.coupons.php?do=edit&id={$coupon.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.coupons.php?do=edit&id={$coupon.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
<a href="prefs.coupons.php?delete={$coupon.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.coupons.php?delete={$coupon.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -59,114 +60,139 @@
<legend>{lng p="addcoupon"}</legend> <legend>{lng p="addcoupon"}</legend>
<form action="prefs.coupons.php?add=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.coupons.php?add=true&sid={$sid}" method="post" onsubmit="spin(this)">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="codes"}</label>
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/coupon32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="codes"}:</td> <textarea class="form-control" name="code" id="codes" placeholder="{lng p="codes"}"></textarea>
<td class="td2"> <div class="text-end">[ <a href="javascript:void(0);" onclick="EBID('generator').style.display=EBID('generator').style.display==''?'none':'';">{lng p="generate"}</a> ]</div>
<textarea style="width:100%;height:80px;" name="code" id="codes"></textarea> </div>
<table cellspacing="0" cellpadding="0" width="100%"> </div>
<tr>
<td align="left"><small>{lng p="sepby"}</small></td>
<td align="right">[ <a href="javascript:void(0);" onclick="EBID('generator').style.display=EBID('generator').style.display==''?'none':'';">{lng p="generate"}</a> ]</td>
</tr>
</table>
<div id="generator" style="display:none;"> <div id="generator" style="display:none;">
<fieldset> <fieldset>
<legend>{lng p="generate"}</legend> <legend>{lng p="generate"}</legend>
<table width="100%">
<tr> <div class="row">
<td class="td1" width="120">{lng p="count"}:</td> <div class="col-md-6">
<td class="td2"><input type="text" id="generator_count" value="10" size="6" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="count"}</label>
<tr> <div class="col-sm-8">
<td class="td1">{lng p="length"}:</td> <input type="number" class="form-control" id="generator_count" value="10" placeholder="{lng p="count"}">
<td class="td2"><input type="text" id="generator_length" value="10" size="6" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="chars"}:</td> <label class="col-sm-4 col-form-label">{lng p="length"}</label>
<td class="td2"> <div class="col-sm-8">
<input type="checkbox" checked="checked" id="generator_az" /> <input type="number" class="form-control" id="generator_length" value="10" placeholder="{lng p="length"}">
<label for="generator_az"><b>a-z</b></label> </div>
<input type="checkbox" checked="checked" id="generator_az2" /> </div>
<label for="generator_az2"><b>A-Z</b></label> </div>
<input type="checkbox" checked="checked" id="generator_09" /> <div class="col-md-6">
<label for="generator_09"><b>0-9</b></label> <div class="mb-3 row">
<input type="checkbox" id="generator_special" /> <label class="col-sm-4 col-form-check-label">{lng p="chars"}</label>
<label for="generator_special"><b>.,_-&amp;$</b></label> <div class="col-sm-8">
</td> <label class="form-check">
</tr> <input class="form-check-input" type="checkbox" id="generator_az" checked="checked">
<tr> <span class="form-check-label">a-z</span>
<td class="td1">&nbsp;</td> </label>
<td class="td2"><input class="button" type="button" value=" {lng p="generate"} " onclick="generateCodes(EBID('codes'));EBID('generator').style.display='none';" /></td> <label class="form-check">
</tr> <input class="form-check-input" type="checkbox" id="generator_az2" checked="checked">
</table> <span class="form-check-label">A-Z</span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox" id="generator_09" checked="checked">
<span class="form-check-label">0-9</span>
</label>
<label class="form-check">
<input class="form-check-input" type="checkbox" id="generator_special">
<span class="form-check-label">.,_-&amp;$</span>
</label>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="button" value="{lng p="generate"}" onclick="generateCodes(EBID('codes')); EBID('generator').style.display='none';" />
</div>
</div>
</div>
</fieldset> </fieldset>
</div> </div>
</td>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="count"}</label>
<td class="td1">{lng p="count"}:</td> <div class="col-sm-10">
<td class="td2"> <div class="input-group mb-2">
<input type="checkbox" onchange="EBID('count').value=this.checked?'-1':'0';" checked="checked" id="count_unlim" /> <span class="input-group-text">
<label for="count_unlim"><b>{lng p="unlimited"}</b></label> <input class="form-check-input m-0" type="checkbox" onchange="EBID('count').value=this.checked?'-1':'0';" checked="checked" id="count_unlim" />
{lng p="or"} </span>
<input type="text" size="6" name="anzahl" id="count" value="-1" onkeyup="EBID('count_unlim').checked=this.value=='-1';" /> <span class="input-group-text">{lng p="unlimited"} {lng p="or"}</span>
</td> <input type="text" class="form-control" name="anzahl" id="count" value="-1" onkeyup="EBID('count_unlim').checked=this.value=='-1';" />
</tr> </div>
<tr> </div>
<td class="td1">{lng p="from"}:</td> </div>
<td class="td2"> <div class="mb-3 row">
<input type="checkbox" checked="checked" id="from_unlim" name="von_unlim" /> <label class="col-sm-2 col-form-label">{lng p="from"}</label>
<label for="from_unlim"><b>{lng p="now"}</b></label> <div class="col-sm-10">
{lng p="or"} <div class="input-group mb-2">
<span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" id="from_unlim" name="von_unlim" checked="checked" />
</span>
<span class="input-group-text">{lng p="now"} {lng p="or"}</span>
{html_select_date prefix="von" start_year="-5" field_order="DMY" field_separator="."}, {html_select_date prefix="von" start_year="-5" field_order="DMY" field_separator="."},
{html_select_time prefix="von" display_seconds=false} {html_select_time prefix="von" display_seconds=false}
</td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="to"}:</td> <div class="mb-3 row">
<td class="td2"> <label class="col-sm-2 col-form-label">{lng p="to"}</label>
<input type="checkbox" checked="checked" id="to_unlim" name="bis_unlim" /> <div class="col-sm-10">
<label for="to_unlim"><b>{lng p="unlimited"}</b></label> <div class="input-group mb-2">
{lng p="or"} <span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" id="to_unlim" name="bis_unlim" checked="checked" />
</span>
<span class="input-group-text">{lng p="now"} {lng p="or"}</span>
{html_select_date prefix="bis" end_year="+5" field_order="DMY" field_separator="."}, {html_select_date prefix="bis" end_year="+5" field_order="DMY" field_separator="."},
{html_select_time prefix="bis" display_seconds=false} {html_select_time prefix="bis" display_seconds=false}
</td> </div>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="validity"}:</td> <div class="mb-3 row">
<td class="td2"> <label class="col-sm-2 col-form-check-label">{lng p="validity"}</label>
<input type="checkbox" checked="checked" id="valid_signup" name="valid_signup" /> <div class="col-sm-10">
<label for="valid_signup"><b>{lng p="signup"}</b></label><br /> <label class="form-check">
<input type="checkbox" checked="checked" id="valid_loggedin" name="valid_loggedin" /> <input class="form-check-input" type="checkbox" name="valid_signup" checked="checked">
<label for="valid_loggedin"><b>{lng p="li"}</b></label> <span class="form-check-label">{lng p="signup"}</span>
</td> </label>
</tr> <label class="form-check">
<tr> <input class="form-check-input" type="checkbox" name="valid_loggedin" checked="checked">
<td class="td1">{lng p="benefit"}:</td> <span class="form-check-label">{lng p="li"}</span>
<td class="td2"> </label>
<div> </div>
<input type="checkbox" name="ver_gruppe" id="ver_gruppe" /> </div>
<label for="ver_gruppe"><b>{lng p="movetogroup"}:</b></label> <div class="mb-3 row">
<select name="ver_gruppe_id"> <label class="col-sm-2 col-form-label">{lng p="benefit"}</label>
<div class="col-sm-10">
<div class="input-group mb-2">
<span class="input-group-text">
<input class="form-check-input m-0" type="checkbox" name="ver_gruppe" />
</span>
<span class="input-group-text">{lng p="movetogroup"}</span>
<select name="ver_gruppe_id" class="form-select">
{foreach from=$groups item=group} {foreach from=$groups item=group}
<option value="{$group.id}">{text value=$group.title}</option> <option value="{$group.id}">{text value=$group.title}</option>
{/foreach} {/foreach}
</select> </select>
</div> </div>
<div class="input-group mb-2">
<div> <span class="input-group-text">
<input type="checkbox" name="ver_credits" id="ver_credits" /> <input class="form-check-input m-0" type="checkbox" name="ver_credits" />
<label for="ver_credits"><b>{lng p="addcredits"}:</b></label> </span>
<input type="text" name="ver_credits_count" value="5" size="6" /> <span class="input-group-text">{lng p="addcredits"}</span>
<input class="form-control" type="text" name="ver_credits_count" value="5" />
</div>
</div>
</div> </div>
</td>
</tr>
</table>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="add"} " /> <input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,22 +2,24 @@
<legend>{lng p="domains"}</legend> <legend>{lng p="domains"}</legend>
<form action="prefs.common.php?action=domains&sid={$sid}" name="f1" method="post" onsubmit="spin(this)"> <form action="prefs.common.php?action=domains&sid={$sid}" name="f1" method="post" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection2(document.forms.f1,'domains[','[del]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th width="25" style="text-align:center;"><a href="javascript:invertSelection2(document.forms.f1,'domains[','[del]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="domain"}</th> <th>{lng p="domain"}</th>
<th style="text-align:center;" width="100">{lng p="login"}</th> <th style="width: 100px; text-align:center;">{lng p="login"}</th>
<th style="text-align:center;" width="100">{lng p="signup"}</th> <th style="width: 100px; text-align:center;">{lng p="signup"}</th>
<th style="text-align:center;" width="100">{lng p="aliases"}</th> <th style="width: 100px; text-align:center;">{lng p="aliases"}</th>
<th width="80">{lng p="pos"}</th> <th style="width: 80px;">{lng p="pos"}</th>
<th width="35">&nbsp;</th> <th style="width: 35px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$domains item=domain} {foreach from=$domains item=domain}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/domain.png" border="0" alt="" width="16" height="16" /></td>
<td><input type="checkbox" name="domains[{$domain.domain}][del]" /></td> <td><input type="checkbox" name="domains[{$domain.domain}][del]" /></td>
<td>{domain value=$domain.domain}</td> <td>{domain value=$domain.domain}</td>
<td style="text-align:center;"><input type="checkbox" name="domains[{$domain.domain}][in_login]"{if $domain.in_login} checked="checked"{/if} /></td> <td style="text-align:center;"><input type="checkbox" name="domains[{$domain.domain}][in_login]"{if $domain.in_login} checked="checked"{/if} /></td>
@ -25,31 +27,35 @@
<td style="text-align:center;"><input type="checkbox" name="domains[{$domain.domain}][in_aliases]"{if $domain.in_aliases} checked="checked"{/if} /></td> <td style="text-align:center;"><input type="checkbox" name="domains[{$domain.domain}][in_aliases]"{if $domain.in_aliases} checked="checked"{/if} /></td>
<td><input type="text" name="domains[{$domain.domain}][pos]" value="{if isset($domain.pos)}{text value=$domain.pos allowEmpty=true}{/if}" size="6" /></td> <td><input type="text" name="domains[{$domain.domain}][pos]" value="{if isset($domain.pos)}{text value=$domain.pos allowEmpty=true}{/if}" size="6" /></td>
<td> <td>
<a href="prefs.common.php?action=domains&delete={$domain.urlDomain}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.common.php?action=domains&delete={$domain.urlDomain}&sid={$sid}" class="btn btn-sm" onclick="return confirm('{lng p="realdel"}');"><i class="fa-regular fa-trash-can"></i></a>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div class="row">
<div class="col-md-6">
<div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div>
<div class="col-md-6 text-end">
<input type="submit" name="save" value="{lng p="save"}" class="btn btn-sm btn-primary" />
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
<div style="float:right;">
<input type="submit" name="save" class="button" value=" {lng p="save"} " />&nbsp;
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -57,32 +63,41 @@
<legend>{lng p="adddomain"}</legend> <legend>{lng p="adddomain"}</legend>
<form action="prefs.common.php?action=domains&add=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.common.php?action=domains&add=true&sid={$sid}" method="post" onsubmit="spin(this)">
<table width="100%"> <div class="row">
<tr> <div class="col-md-4">
<td width="40" valign="top" rowspan="3"><img src="{$tpldir}images/domain32.png" border="0" alt="" width="32" height="32" /></td> <div class="mb-3">
<td class="td1" width="150">{lng p="domain"}:</td> <label class="form-label">{lng p="domain"}</label>
<td class="td2"><input type="text" style="width:85%;" name="domain" value="" /></td> <input type="text" class="form-control" id="username" name="domain" placeholder="{lng p="domain"}">
</tr> </div>
<tr> </div>
<td class="td1">{lng p="show_at"}:</td> <div class="col-md-2">
<td class="td2"><input type="checkbox" name="in_login" id="in_login" checked="checked" /> <div class="mb-3">
<label for="in_login">{lng p="login"}</label> <label class="form-label">{lng p="pos"}</label>
<br /> <input type="number" class="form-control" id="pos" name="pos" value="0" size="6" placeholder="{lng p="pos"}">
<input type="checkbox" name="in_signup" id="in_signup" checked="checked" /> </div>
<label for="in_signup">{lng p="signup"}</label> </div>
<br /> <div class="col-md-6">
<input type="checkbox" name="in_aliases" id="in_aliases" checked="checked" /> <div class="mb-3">
<label for="in_aliases">{lng p="aliases"}</label> <label class="form-label">{lng p="show_at"}</label>
</td> <div class="form-selectgroup">
</tr> <label class="form-selectgroup-item">
<tr> <input type="checkbox" name="in_login" class="form-selectgroup-input" checked="checked">
<td class="td1">{lng p="pos"}:</td> <span class="form-selectgroup-label">{lng p="login"}</span>
<td class="td2"><input type="text" name="pos" value="0" size="6" /></td> </label>
</tr> <label class="form-selectgroup-item">
</table> <input type="checkbox" name="in_login" class="form-selectgroup-input" checked="checked">
<span class="form-selectgroup-label">{lng p="signup"}</span>
<p align="right"> </label>
<input class="button" type="submit" value=" {lng p="add"} " /> <label class="form-selectgroup-item">
</p> <input type="checkbox" name="in_aliases" class="form-selectgroup-input" checked="checked">
<span class="form-selectgroup-label">{lng p="aliases"}</span>
</label>
</div>
</div>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</div>
</form> </form>
</fieldset> </fieldset>

View file

@ -1,53 +1,67 @@
<form action="prefs.email.php?action=antispam&save=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.email.php?action=antispam&save=true&sid={$sid}" method="post" onsubmit="spin(this)">
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="dnsbl"}</legend> <legend>{lng p="dnsbl"}</legend>
<table width="90%"> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-check-label">{lng p="enable"}</label>
<td align="left" rowspan="3" valign="top" width="40"><img src="{$tpldir}images/antispam_dnsbl.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="enable"}?</td> <label class="form-check">
<td class="td2"><input name="spamcheck"{if $bm_prefs.spamcheck=='yes'} checked="checked"{/if} type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="spamcheck"{if $bm_prefs.spamcheck=='yes'} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="dnsblservers"}:</td> </div>
<td class="td2"> <div class="mb-3 row">
<textarea style="width:100%;height:80px;" name="dnsbl">{text value=$bm_prefs.dnsbl allowEmpty=true}</textarea> <label class="col-sm-4 col-form-label">{lng p="dnsblservers"}</label>
<div class="col-sm-8">
<textarea class="form-control" name="dnsbl" placeholder="{lng p="dnsblservers"}">{text value=$bm_prefs.dnsbl allowEmpty=true}</textarea>
<small>{lng p="sepby"}</small> <small>{lng p="sepby"}</small>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="dnsblreq"}:</td> <label class="col-sm-4 col-form-label">{lng p="dnsblreq"}</label>
<td class="td2"><input type="text" name="dnsbl_requiredservers" value="{$bm_prefs.dnsbl_requiredservers}" size="6" /></td> <div class="col-sm-8">
</tr> <input type="number" class="form-control" name="dnsbl_requiredservers" value="{$bm_prefs.dnsbl_requiredservers}" placeholder="{lng p="dnsblreq"}">
</table> </div>
</div>
</fieldset> </fieldset>
</div>
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="bayes"}</legend> <legend>{lng p="bayes"}</legend>
<table width="90%"> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-check-label">{lng p="enable"}</label>
<td align="left" rowspan="3" valign="top" width="40"><img src="{$tpldir}images/antispam_bayes.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="enable"}?</td> <label class="form-check">
<td class="td2"><input name="use_bayes"{if $bm_prefs.use_bayes=='yes'} checked="checked"{/if} type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="use_bayes"{if $bm_prefs.use_bayes=='yes'} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="bayesmode"}:</td> </div>
<td class="td2"><select name="bayes_mode"> <div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="bayesmode"}</label>
<div class="col-sm-8">
<select name="bayes_mode" class="form-select">
<option value="local"{if $bm_prefs.bayes_mode=='local'} selected="selected"{/if}>{lng p="bayeslocal"}</option> <option value="local"{if $bm_prefs.bayes_mode=='local'} selected="selected"{/if}>{lng p="bayeslocal"}</option>
<option value="global"{if $bm_prefs.bayes_mode=='global'} selected="selected"{/if}>{lng p="bayesglobal"}</option> <option value="global"{if $bm_prefs.bayes_mode=='global'} selected="selected"{/if}>{lng p="bayesglobal"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="bayesdb"}:</td> <div class="mb-3 row">
<td class="td2">{$bayesWordCount} {lng p="entries"} <input{if $bayesWordCount==0} disabled="disabled"{/if} class="button" type="button" value=" {lng p="reset"} " onclick="if(confirm('{lng p="bayesresetq"}')) document.location.href='prefs.email.php?action=antispam&resetBayesDB=true&sid={$sid}';" /></td> <label class="col-sm-4 col-form-label">{lng p="bayesdb"}</label>
</tr> <div class="col-sm-8">
</table> <div class="input-group">
</fieldset> <span class="input-group-text">{$bayesWordCount} {lng p="entries"}</span>
<input{if $bayesWordCount==0} disabled="disabled"{/if} class="btn" type="button" value=" {lng p="reset"} " onclick="if(confirm('{lng p="bayesresetq"}')) document.location.href='prefs.email.php?action=antispam&resetBayesDB=true&sid={$sid}';" />
<p> </div>
<div style="float:right" class="buttons"> </div>
<input class="button" type="submit" value=" {lng p="save"} " /> </div>
</fieldset>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</div> </div>
</p>
</form> </form>

View file

@ -2,31 +2,31 @@
<fieldset> <fieldset>
<legend>{lng p="clamintegration"}</legend> <legend>{lng p="clamintegration"}</legend>
<table> <div class="alert alert-warning">{lng p="clamwarning"}</div>
<tr>
<td align="left" rowspan="3" valign="top" width="40"><img src="{$tpldir}images/antivirus.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="220">{lng p="enable"}?</td>
<td class="td2"><input name="use_clamd"{if $bm_prefs.use_clamd=='yes'} checked="checked"{/if} type="checkbox" /></td>
</tr>
<tr>
<td class="td1">{lng p="host"}:</td>
<td class="td2"><input type="text" name="clamd_host" value="{$bm_prefs.clamd_host}" size="36" /></td>
</tr>
<tr>
<td class="td1">{lng p="port"}:</td>
<td class="td2"><input type="text" name="clamd_port" value="{$bm_prefs.clamd_port}" size="6" /></td>
</tr>
</table>
<p> <div class="mb-3 row">
<img src="{$tpldir}images/warning.png" border="0" alt="" width="16" height="16" align="absmiddle" /> <label class="col-sm-2 col-form-check-label">{lng p="enable"}</label>
{lng p="clamwarning"} <div class="col-sm-10">
</p> <label class="form-check">
<input class="form-check-input" type="checkbox" name="use_clamd"{if $bm_prefs.use_clamd=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="host"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="clamd_host" value="{$bm_prefs.clamd_host}" placeholder="{lng p="host"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="port"}</label>
<div class="col-sm-10">
<input type="number" class="form-control" name="clamd_port" value="{$bm_prefs.clamd_port}" placeholder="{lng p="port"}">
</div>
</div>
</fieldset> </fieldset>
<p> <div class="text-end">
<div style="float:right" class="buttons"> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p>
</form> </form>

View file

@ -2,49 +2,43 @@
<fieldset> <fieldset>
<legend>{lng p="common"}</legend> <legend>{lng p="common"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="storein"}</label>
<td width="40" valign="top" rowspan="4"><img src="{$tpldir}images/ico_prefs_email.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="storein"}:</td> <select name="blobstorage_provider" class="form-select">
<td class="td2"><select name="blobstorage_provider">
<option value="0"{if $bm_prefs.blobstorage_provider==0} selected="selected"{/if}>{lng p="filesystem"} ({lng p="separatefiles"})</option> <option value="0"{if $bm_prefs.blobstorage_provider==0} selected="selected"{/if}>{lng p="filesystem"} ({lng p="separatefiles"})</option>
<option value="1"{if $bm_prefs.blobstorage_provider==1} selected="selected"{/if}{if !$bsUserDBAvailable} disabled="disabled"{/if}>{lng p="filesystem"} ({lng p="userdb"})</option> <option value="1"{if $bm_prefs.blobstorage_provider==1} selected="selected"{/if}{if !$bsUserDBAvailable} disabled="disabled"{/if}>{lng p="filesystem"} ({lng p="userdb"})</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="blobcompress"}?</td> <div class="mb-3 row">
<td class="td2"> <label class="col-sm-2 col-form-check-label">{lng p="blobcompress"}</label>
<label> <div class="col-sm-10">
<input name="blobstorage_compress"{if $bm_prefs.blobstorage_compress=='yes'} checked="checked"{/if} type="checkbox" /> <label class="form-check">
{lng p="enable"} <input class="form-check-input" type="checkbox" name="blobstorage_compress"{if $bm_prefs.blobstorage_compress=='yes'} checked="checked"{/if}>
<span class="form-check-label">{lng p="onlyfor"} &quot;{lng p="filesystem"} ({lng p="userdb"})&quot;</span>
</label> </label>
<small style="margin-left:1em;color:#666;">{lng p="onlyfor"} &quot;{lng p="filesystem"} ({lng p="userdb"})&quot;</small> </div>
</td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-check-label">{lng p="ftsearch"}</label>
<td class="td1">{lng p="ftsearch"}:</td> <div class="col-sm-10">
<td class="td2"> <label class="form-check">
<label> <input class="form-check-input" type="checkbox" name="fts_bg_indexing"{if $bm_prefs.fts_bg_indexing=='yes'} checked="checked"{/if}>
<input name="fts_bg_indexing"{if $bm_prefs.fts_bg_indexing=='yes'} checked="checked"{/if} type="checkbox" />
{lng p="fts_bg_indexing"}
</label> </label>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="exturl"}:</td> <label class="col-sm-2 col-form-check-label">{lng p="exturl"}</label>
<td class="td2"> <div class="col-sm-10">
<label> <label class="form-check">
<input name="exturl_warning"{if $bm_prefs.exturl_warning=='yes'} checked="checked"{/if} type="checkbox" /> <input class="form-check-input" type="checkbox" name="exturl_warning"{if $bm_prefs.exturl_warning=='yes'} checked="checked"{/if}>
{lng p="exturl_warning"}
</label> </label>
</td> </div>
</tr> </div>
</table>
</fieldset> </fieldset>
<p> <div class="text-end">
<div style="float:right" class="buttons"> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p>
</form> </form>

View file

@ -2,88 +2,115 @@
<fieldset> <fieldset>
<legend>{lng p="recvmethod"}</legend> <legend>{lng p="recvmethod"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="recvmethod"}</label>
<td width="40" valign="top" rowspan="1"><img src="{$tpldir}images/ico_prefs_receiving.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="recvmethod"}:</td> <select name="receive_method" class="form-select">
<td class="td2"><select name="receive_method">
<option value="pop3"{if $bm_prefs.receive_method=='pop3'} selected="selected"{/if}>{lng p="pop3gateway"}</option> <option value="pop3"{if $bm_prefs.receive_method=='pop3'} selected="selected"{/if}>{lng p="pop3gateway"}</option>
<option value="pipe"{if $bm_prefs.receive_method=='pipe'} selected="selected"{/if}>{lng p="pipeetc"}</option> <option value="pipe"{if $bm_prefs.receive_method=='pipe'} selected="selected"{/if}>{lng p="pipeetc"}</option>
</select></td> </select>
</tr> </div>
</table> </div>
</fieldset> </fieldset>
<div class="row">
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="pop3gateway"}</legend> <legend>{lng p="pop3gateway"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="pop3host"}</label>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/ico_prefs_login.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="pop3host"}:</td> <input type="text" class="form-control" name="pop3_host" value="{text allowEmpty=true value=$bm_prefs.pop3_host}" placeholder="{lng p="pop3host"}">
<td class="td2"><input type="text" name="pop3_host" value="{text allowEmpty=true value=$bm_prefs.pop3_host}" size="36" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="pop3port"}:</td> <label class="col-sm-4 col-form-label">{lng p="pop3port"}</label>
<td class="td2"><input type="text" name="pop3_port" value="{$bm_prefs.pop3_port}" size="6" /></td> <div class="col-sm-8">
</tr> <input type="number" class="form-control" name="pop3_port" value="{$bm_prefs.pop3_port}" placeholder="{lng p="pop3port"}">
<tr> </div>
<td class="td1" width="220">{lng p="pop3user"}:</td> </div>
<td class="td2"><input type="text" name="pop3_user" value="{text allowEmpty=true value=$bm_prefs.pop3_user}" size="36" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-4 col-form-label">{lng p="pop3user"}</label>
<tr> <div class="col-sm-8">
<td class="td1" width="220">{lng p="pop3pass"}:</td> <input type="text" class="form-control" name="pop3_user" value="{text allowEmpty=true value=$bm_prefs.pop3_user}" placeholder="{lng p="pop3user"}">
<td class="td2"><input type="password" autocomplete="off" name="pop3_pass" value="{text allowEmpty=true value=$bm_prefs.pop3_pass}" size="36" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="220">{lng p="fetchcount"}:</td> <label class="col-sm-4 col-form-label">{lng p="pop3pass"}</label>
<td class="td2"><input type="text" name="fetchcount" value="{$bm_prefs.fetchcount}" size="6" /></td> <div class="col-sm-8">
</tr> <input type="password" class="form-control" name="pop3_host" value="{text allowEmpty=true value=$bm_prefs.pop3_pass}" placeholder="{lng p="pop3pass"}">
</table> </div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="fetchcount"}</label>
<div class="col-sm-8">
<input type="number" class="form-control" name="fetchcount" value="{$bm_prefs.fetchcount}" placeholder="{lng p="fetchcount"}">
</div>
</div>
</fieldset> </fieldset>
</div>
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="miscprefs"}</legend> <legend>{lng p="miscprefs"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="recpdetection"}</label>
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/ico_prefs_misc.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="recpdetection"}:</td> <select name="recipient_detection" class="form-select">
<td class="td2"><select name="recipient_detection">
<option value="static"{if $bm_prefs.recipient_detection=='static'} selected="selected"{/if}>{lng p="rd_static"}</option> <option value="static"{if $bm_prefs.recipient_detection=='static'} selected="selected"{/if}>{lng p="rd_static"}</option>
<option value="dynamic"{if $bm_prefs.recipient_detection=='dynamic'} selected="selected"{/if}>{lng p="rd_dynamic"}</option> <option value="dynamic"{if $bm_prefs.recipient_detection=='dynamic'} selected="selected"{/if}>{lng p="rd_dynamic"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1" width="220">{lng p="errormail"}?</td> <div class="mb-3 row">
<td class="td2"><select name="errormail"> <label class="col-sm-4 col-form-label">{lng p="errormail"}</label>
<div class="col-sm-8">
<select name="errormail" class="form-select">
<option value="yes"{if $bm_prefs.errormail=='yes'} selected="selected"{/if}>{lng p="yes"}</option> <option value="yes"{if $bm_prefs.errormail=='yes'} selected="selected"{/if}>{lng p="yes"}</option>
<option value="no"{if $bm_prefs.errormail=='no'} selected="selected"{/if}>{lng p="no"}</option> <option value="no"{if $bm_prefs.errormail=='no'} selected="selected"{/if}>{lng p="no"}</option>
<option value="soft"{if $bm_prefs.errormail=='soft'} selected="selected"{/if}>{lng p="errormail_soft"}</option> <option value="soft"{if $bm_prefs.errormail=='soft'} selected="selected"{/if}>{lng p="errormail_soft"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1" width="220">{lng p="detectduplicates"}?</td> <div class="mb-3 row">
<td class="td2"><input name="detect_duplicates"{if $bm_prefs.detect_duplicates=='yes'} checked="checked"{/if} type="checkbox" /></td> <label class="col-sm-4 col-form-check-label">{lng p="detectduplicates"}</label>
</tr> <div class="col-sm-8">
<tr> <label class="form-check">
<td class="td1" width="220">{lng p="returnpathcheck"}?</td> <input class="form-check-input" type="checkbox" name="detect_duplicates"{if $bm_prefs.detect_duplicates=='yes'} checked="checked"{/if}>
<td class="td2"><input name="returnpath_check"{if $bm_prefs.returnpath_check=='yes'} checked="checked"{/if} type="checkbox" /></td> </label>
</tr> </div>
<tr> </div>
<td class="td1" width="220">{lng p="failure_forward"}?</td> <div class="mb-3 row">
<td class="td2"><input name="failure_forward"{if $bm_prefs.failure_forward=='yes'} checked="checked"{/if} type="checkbox" /></td> <label class="col-sm-4 col-form-check-label">{lng p="returnpathcheck"}</label>
</tr> <div class="col-sm-8">
<tr> <label class="form-check">
<td class="td1" width="220">{lng p="mailmax"}:</td> <input class="form-check-input" type="checkbox" name="returnpath_check"{if $bm_prefs.returnpath_check=='yes'} checked="checked"{/if}>
<td class="td2"><input type="text" name="mailmax" value="{$bm_prefs.mailmax/1024}" size="6" /> KB</td> </label>
</tr> </div>
</table> </div>
</fieldset> <div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="failure_forward"}</label>
<p> <div class="col-sm-8">
<div style="float:right;" class="buttons"> <label class="form-check">
<input class="button" type="submit" value=" {lng p="save"} " />&nbsp; <input class="form-check-input" type="checkbox" name="failure_forward"{if $bm_prefs.failure_forward=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="mailmax"}</label>
<div class="col-sm-8">
<div class="input-group mb-2">
<input type="text" class="form-control" name="mailmax" value="{$bm_prefs.mailmax/1024}" placeholder="{lng p="mailmax"}">
<span class="input-group-text">KB</span>
</div>
</div>
</div>
</fieldset>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />&nbsp;
</div> </div>
</p>
</form> </form>

View file

@ -2,95 +2,116 @@
<fieldset> <fieldset>
<legend>{lng p="sendmethod"}</legend> <legend>{lng p="sendmethod"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="sendmethod"}</label>
<td width="40" valign="top" rowspan="1"><img src="{$tpldir}images/ico_prefs_sending.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="sendmethod"}:</td> <select name="send_method" class="form-control">
<td class="td2"><select name="send_method">
<option value="smtp"{if $bm_prefs.send_method=='smtp'} selected="selected"{/if}>{lng p="smtp"}</option> <option value="smtp"{if $bm_prefs.send_method=='smtp'} selected="selected"{/if}>{lng p="smtp"}</option>
<option value="php"{if $bm_prefs.send_method=='php'} selected="selected"{/if}>{lng p="phpmail"}</option> <option value="php"{if $bm_prefs.send_method=='php'} selected="selected"{/if}>{lng p="phpmail"}</option>
<option value="sendmail"{if $bm_prefs.send_method=='sendmail'} selected="selected"{/if}>{lng p="sendmail2"}</option> <option value="sendmail"{if $bm_prefs.send_method=='sendmail'} selected="selected"{/if}>{lng p="sendmail2"}</option>
</select></td> </select>
</tr> </div>
</table> </div>
</fieldset>
<fieldset>
<legend>{lng p="smtp"}</legend>
<table>
<tr>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/ico_prefs_login.png" border="0" alt="" width="32" height="32" /></td>
<td class="td1" width="220">{lng p="smtphost"}:</td>
<td class="td2"><input type="text" name="smtp_host" value="{text allowEmpty=true value=$bm_prefs.smtp_host}" size="36" /></td>
</tr>
<tr>
<td class="td1">{lng p="smtpport"}:</td>
<td class="td2"><input type="text" name="smtp_port" value="{$bm_prefs.smtp_port}" size="6" /></td>
</tr>
<tr>
<td class="td1">{lng p="smtpauth"}?</td>
<td class="td2"><input name="smtp_auth"{if $bm_prefs.smtp_auth=='yes'} checked="checked"{/if} type="checkbox" /></td>
</tr>
<tr>
<td class="td1">{lng p="smtpuser"}:</td>
<td class="td2"><input type="text" name="smtp_user" value="{text allowEmpty=true value=$bm_prefs.smtp_user}" size="36" /></td>
</tr>
<tr>
<td class="td1">{lng p="smtppass"}:</td>
<td class="td2"><input type="password" autocomplete="off" name="smtp_pass" value="{text allowEmpty=true value=$bm_prefs.smtp_pass}" size="36" /></td>
</tr>
</table>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="sendmail2"}</legend> <legend>{lng p="sendmail2"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="sendmailpath"}</label>
<td width="40" valign="top" rowspan="1"><img src="{$tpldir}images/ico_prefs_cmd.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="sendmailpath"}:</td> <input type="text" class="form-control" name="sendmail_path" value="{text allowEmpty=true value=$bm_prefs.sendmail_path}" placeholder="{lng p="sendmailpath"}">
<td class="td2"><input type="text" name="sendmail_path" value="{text allowEmpty=true value=$bm_prefs.sendmail_path}" size="36" /></td> </div>
</tr> </div>
</table>
</fieldset> </fieldset>
<div class="row">
<div class="col-md-6">
<fieldset>
<legend>{lng p="smtp"}</legend>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="smtphost"}</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="smtp_host" value="{text allowEmpty=true value=$bm_prefs.smtp_host}" placeholder="{lng p="smtphost"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="smtpport"}</label>
<div class="col-sm-8">
<input type="number" class="form-control" name="smtp_port" value="{$bm_prefs.smtp_port}" placeholder="{lng p="smtpport"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="smtpauth"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="smtp_auth"{if $bm_prefs.smtp_auth=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="smtpuser"}</label>
<div class="col-sm-8">
<input type="text" class="form-control" name="smtp_user" value="{text allowEmpty=true value=$bm_prefs.smtp_user}" placeholder="{lng p="smtpuser"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-4 col-form-label">{lng p="smtppass"}</label>
<div class="col-sm-8">
<input type="password" class="form-control" name="smtp_pass" value="{text allowEmpty=true value=$bm_prefs.smtp_pass}" placeholder="{lng p="smtppass"}">
</div>
</div>
</fieldset>
</div>
<div class="col-md-6">
<fieldset> <fieldset>
<legend>{lng p="miscprefs"}</legend> <legend>{lng p="miscprefs"}</legend>
<table width="90%"> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="sysmailsender"}</label>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/ico_prefs_misc.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-8">
<td class="td1" width="220">{lng p="sysmailsender"}:</td> <input type="text" class="form-control" name="passmail_abs" value="{text allowEmpty=true value=$bm_prefs.passmail_abs}" placeholder="{lng p="sysmailsender"}">
<td class="td2"><input type="text" name="passmail_abs" value="{email value=$bm_prefs.passmail_abs}" size="36" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="blockedrecps"}:</td> <label class="col-sm-4 col-form-label">{lng p="blockedrecps"}</label>
<td class="td2"> <div class="col-sm-8">
<textarea style="width:100%;height:80px;" name="blocked">{text value=$bm_prefs.blocked allowEmpty=true}</textarea> <textarea class="form-control" name="blocked" placeholder="{lng p="blockedrecps"}">{text value=$bm_prefs.blocked allowEmpty=true}</textarea>
<small>{lng p="altmailsepby"}</small> <small>{lng p="altmailsepby"}</small>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="certmaillife"}:</td> <label class="col-sm-4 col-form-label">{lng p="certmaillife"}</label>
<td class="td2"><input type="text" name="einsch_life" value="{$bm_prefs.einsch_life/86400}" size="4" /> <div class="col-sm-8">
{lng p="days"}</td> <div class="input-group mb-2">
</tr> <input type="number" class="form-control" name="einsch_life" value="{$bm_prefs.einsch_life/86400}" placeholder="{lng p="certmaillife"}">
<tr> <span class="input-group-text">{lng p="days"}</span>
<td class="td1">{lng p="min_draft_save"}:</td> </div>
<td class="td2"><input type="text" name="min_draft_save_interval" value="{$bm_prefs.min_draft_save_interval}" size="4" /> </div>
{lng p="seconds"}</td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-4 col-form-label">{lng p="min_draft_save"}</label>
<td class="td1">{lng p="write_xsenderip"}?</td> <div class="col-sm-8">
<td class="td2"><input name="write_xsenderip"{if $bm_prefs.write_xsenderip=='yes'} checked="checked"{/if} type="checkbox" /></td> <div class="input-group mb-2">
</tr> <input type="number" class="form-control" name="min_draft_save_interval" value="{$bm_prefs.min_draft_save_interval}" placeholder="{lng p="min_draft_save"}">
</table> <span class="input-group-text">{lng p="seconds"}</span>
</fieldset> </div>
</div>
<p> </div>
<div style="float:right;" class="buttons"> <div class="mb-3 row">
<input class="button" type="submit" value=" {lng p="save"} " />&nbsp; <label class="col-sm-4 col-form-check-label">{lng p="write_xsenderip"}</label>
<div class="col-sm-8">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="write_xsenderip"{if $bm_prefs.write_xsenderip=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</fieldset>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="save"}" />&nbsp;
</div> </div>
</p>
</form> </form>

View file

@ -1,67 +1,65 @@
<form action="prefs.email.php?action=smime&do=editca&set=true&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)"> <form action="prefs.email.php?action=smime&do=editca&set=true&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)">
<fieldset> <fieldset>
<legend>{lng p="info"}</legend> <legend>{lng p="info"}</legend>
<table> <div class="alert alert-info">{lng p="cert_ca_info"}</div>
<tr> </fieldset>
<td width="36" valign="top"><img src="{$tpldir}images/info32.png" border="0" alt="" width="32" height="32" /></td>
<td valign="top">{lng p="cert_ca_info"}</td>
</tr>
</table>
</fieldset>
<fieldset> <fieldset>
<legend>{lng p="cert_ca_current"}</legend> <legend>{lng p="cert_ca_current"}</legend>
{if $certInfo} {if $certInfo}
<table width="90%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="cert_ca"}</label>
<td align="left" rowspan="2" valign="top" width="40"><img src="{$tpldir}images/cert32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="cert_ca"}:</td> <div class="form-control-plaintext" style="font-weight: bold;">{text value=$certInfo.subject.CN}</div>
<td class="td2">{text value=$certInfo.subject.CN}</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="validity"}:</td> <label class="col-sm-2 col-form-label">{lng p="validity"}</label>
<td class="td2"> <div class="col-sm-10">
{if !$validCert}<font color="red">{/if}{lng p="from"} {date timestamp=$certInfo.validFrom_time_t dayonly=true}<br /> <div class="form-control-plaintext" style="font-weight: bold;">
{lng p="to"} {date timestamp=$certInfo.validTo_time_t dayonly=true}{if !$validCert}</font>{/if} {if !$validCert}<p class="text-red">{/if}{lng p="from"} {date timestamp=$certInfo.validFrom_time_t dayonly=true}<br />
</td> {lng p="to"} {date timestamp=$certInfo.validTo_time_t dayonly=true}{if !$validCert}</p>{/if}
</tr> </div>
</table> </div>
</div>
{else} {else}
<center><i>({lng p="cert_noca"})</i></center> <div class="alert alert-muted">({lng p="cert_noca"})</div>
{/if} {/if}
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="cert_ca_import"}</legend> <legend>{lng p="cert_ca_import"}</legend>
<table width="90%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="cert_ca_cert"}</label>
<td align="left" rowspan="2" valign="top" width="40"><img src="{$tpldir}images/certadd32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="cert_ca_cert"}:</td> <div class="input-group">
<td class="td2"> <span class="input-group-text">{lng p="cert_ca_file_pem"}</span>
<div style="float:left;">{lng p="cert_ca_file_pem"}:<br /> <input type="file" name="cert_ca_pem" class="form-control" />
<input type="file" name="cert_ca_pem" style="width:280px;" /><br />
{lng p="cert_ca_file_key"}:<br />
<input type="file" name="cert_ca_key" style="width:280px;" />
</td>
</tr>
<tr>
<td class="td1">{lng p="cert_ca_pass"}:</td>
<td class="td2"><input type="password" name="cert_ca_pass" value="" size="36" autocomplete="off" /></td>
</tr>
</table>
</fieldset>
<p>
<div style="float:left;" class="buttons">
<input class="button" type="button" value=" &laquo; {lng p="back"} " onclick="document.location.href='prefs.email.php?action=smime&sid={$sid}';" />
</div> </div>
<div style="float:right;" class="buttons">
<input class="button" type="submit" value=" {lng p="import"} " />
</div> </div>
</p> </div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">&nbsp;</label>
<div class="col-sm-10">
<div class="input-group">
<span class="input-group-text">{lng p="cert_ca_file_key"}</span>
<input type="file" name="cert_ca_key" class="form-control" />
</div>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="cert_ca_pass"}</label>
<div class="col-sm-10">
<input type="password" class="form-control" name="cert_ca_pass" value="" placeholder="{lng p="cert_ca_pass"}" autocomplete="off">
</div>
</div>
</fieldset>
<div class="row">
<div class="col-md-6"><input class="btn btn-muted" type="button" value="&laquo; {lng p="back"}" onclick="document.location.href='prefs.email.php?action=smime&sid={$sid}';" /></div>
<div class="col-md-6 text-end"><input class="btn btn-primary" type="submit" value="{lng p="import"}" /></div>
</div>
</form> </form>

View file

@ -1,77 +1,84 @@
<fieldset> <div class="row">
<div class="col-md-6">
<fieldset>
<legend>{lng p="prefs"}</legend> <legend>{lng p="prefs"}</legend>
<table width="90%"> <input class="btn btn-primary" type="button" value=" {lng p="setedit"} " onclick="document.location.href='prefs.email.php?action=smime&do=editca&sid={$sid}';" />
<tr> </fieldset>
<td align="left" valign="top" width="40"><img src="{$tpldir}images/cert32.png" border="0" alt="" width="32" height="32" /></td> </div>
<td class="td1" width="220">{lng p="cert_ca"}:</td> <div class="col-md-6">
<td class="td2"><input class="button" type="button" value=" {lng p="setedit"} " onclick="document.location.href='prefs.email.php?action=smime&do=editca&sid={$sid}';" /></td> <fieldset>
</tr> <legend>{lng p="addrootcert"}</legend>
</table>
</fieldset> <form action="prefs.email.php?action=smime&add=true&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)">
<div class="mb-3 row">
<label class="col-sm-4 col-form-check-label">{lng p="certfile"}</label>
<div class="col-sm-8">
<label class="form-check">
<input type="file" name="certfile" class="form-control" />
</label>
</div>
</div>
<div class="text-end">
<input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</div>
</form>
</fieldset>
</div>
</div>
<fieldset> <fieldset>
<legend>{lng p="rootcerts"}</legend> <legend>{lng p="rootcerts"}</legend>
<form action="prefs.email.php?action=smime&sid={$sid}" name="f1" method="post"> <form action="prefs.email.php?action=smime&sid={$sid}" name="f1" method="post">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'certs[]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'certs[]');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="name"}</th> <th>{lng p="name"}</th>
<th width="180">{lng p="validity"}</th> <th width="180">{lng p="validity"}</th>
<th width="60">&nbsp;</th> <th width="60">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$certs item=cert} {foreach from=$certs item=cert}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/cert_{if $cert.valid}ok{else}expired{/if}.png" border="0" alt="" width="16" height="16" /></td> <td style="text-align: center;"><input type="checkbox" name="certs[]" value="{$cert.certificateid}" /></td>
<td align="center"><input type="checkbox" name="certs[]" value="{$cert.certificateid}" /></td>
<td>{text value=$cert.cn cut=45}</td> <td>{text value=$cert.cn cut=45}</td>
<td>{if !$cert.valid}<font color="red">{/if}{lng p="to"} {date timestamp=$cert.validto dayonly=true}<br /><small>{lng p="from"} {date timestamp=$cert.validfrom dayonly=true}</small>{if !$cert.valid}</font>{/if}</td> <td>{if !$cert.valid}<font color="red">{/if}{lng p="to"} {date timestamp=$cert.validto dayonly=true}<br /><small>{lng p="from"} {date timestamp=$cert.validfrom dayonly=true}</small>{if !$cert.valid}</font>{/if}</td>
<td> <td class="text-nowrap">
<a href="prefs.email.php?action=smime&export={$cert.certificateid}&sid={$sid}"><img src="{$tpldir}images/cert_export.png" border="0" alt="{lng p="export"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
<a href="prefs.email.php?action=smime&delete={$cert.certificateid}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.email.php?action=smime&export={$cert.certificateid}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-circle-down"></i></a>
<a href="prefs.email.php?action=smime&delete={$cert.certificateid}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="export">{lng p="export"}</option> <option value="export">{lng p="export"}</option>
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form>
</fieldset>
<fieldset>
<legend>{lng p="addrootcert"}</legend>
<form action="prefs.email.php?action=smime&add=true&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)">
<table width="100%">
<tr>
<td width="40" valign="top" rowspan="5"><img src="{$tpldir}images/certadd32.png" border="0" alt="" width="32" height="32" /></td>
<td>{lng p="certfile"}:<br />
<input type="file" name="certfile" style="width:440px;" /></td>
</tr>
</table>
<p align="right">
<input class="button" type="submit" value=" {lng p="add"} " />
</p>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,20 +2,20 @@
<legend>{lng p="edit"}</legend> <legend>{lng p="edit"}</legend>
<form action="prefs.extensions.php?do=edit&id={$extension.id}&save=true&sid={$sid}" method="post" onsubmit="spin(this)" enctype="multipart/form-data"> <form action="prefs.extensions.php?do=edit&id={$extension.id}&save=true&sid={$sid}" method="post" onsubmit="spin(this)" enctype="multipart/form-data">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="filetypes"}</label>
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/extension.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="filetypes"}:</td> <input type="text" class="form-control" name="ext" value="{text value=$extension.ext}"{if $extension.ext[0]=='.'} disabled="disabled"{/if} placeholder="{lng p="filetypes"}">
<td class="td2"><input{if $extension.ext[0]=='.'} disabled="disabled"{/if} type="text" style="width:85%;" name="ext" value="{text value=$extension.ext}" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="150">{lng p="icon"}:</td> <label class="col-sm-2 col-form-label">{lng p="icon"}</label>
<td class="td2"><input type="file" name="icon" style="width:440px;" /></td> <div class="col-sm-10">
</tr> <input type="file" class="form-control" name="icon" accept="image/*" placeholder="{lng p="icon"}">
</table> </div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="save"} " /> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,46 +2,50 @@
<legend>{lng p="webdiskicons"}</legend> <legend>{lng p="webdiskicons"}</legend>
<form action="prefs.extensions.php?sid={$sid}" name="f1" method="post" onsubmit="spin(this)"> <form action="prefs.extensions.php?sid={$sid}" name="f1" method="post" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="36">&nbsp;</th> <th style="width: 25px; text-align: center;"><a href="javascript:invertSelection(document.forms.f1,'ext_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'ext_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="filetypes"}</th> <th>{lng p="filetypes"}</th>
<th width="200">{lng p="type"}</th> <th style="width: 200px;">{lng p="type"}</th>
<th width="60">&nbsp;</th> <th style="width: 60px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$extensions item=ext} {foreach from=$extensions item=ext}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="prefs.extensions.php?action=display&id={$ext.id}&sid={$sid}" border="0" alt="" /></td> <td class="text-center">{if $ext.ext[0]!='.'}<input type="checkbox" name="ext_{$ext.id}" />{/if}</td>
<td align="center">{if $ext.ext[0]!='.'}<input type="checkbox" name="ext_{$ext.id}" />{/if}</td>
<td>{text value=$ext.ext}</td> <td>{text value=$ext.ext}</td>
<td>{text value=$ext.ctype}</td> <td>{text value=$ext.ctype}</td>
<td> <td class="text-nowrap">
<a href="prefs.extensions.php?do=edit&id={$ext.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
{if $ext.ext[0]!='.'}<a href="prefs.extensions.php?delete={$ext.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a>{/if} <a href="prefs.extensions.php?do=edit&id={$ext.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
{if $ext.ext[0]!='.'}<a href="prefs.extensions.php?delete={$ext.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>{/if}
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -49,20 +53,21 @@
<legend>{lng p="addwebdiskicon"}</legend> <legend>{lng p="addwebdiskicon"}</legend>
<form action="prefs.extensions.php?add=true&sid={$sid}" method="post" onsubmit="spin(this)" enctype="multipart/form-data"> <form action="prefs.extensions.php?add=true&sid={$sid}" method="post" onsubmit="spin(this)" enctype="multipart/form-data">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="filetypes"}</label>
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/extension_add.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="filetypes"}:</td> <input type="text" class="form-control" name="ext" value="" placeholder="{lng p="filetypes"}">
<td class="td2"><input type="text" style="width:85%;" name="ext" value="" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1" width="150">{lng p="icon"}:</td> <label class="col-sm-2 col-form-label">{lng p="icon"}</label>
<td class="td2"><input type="file" name="icon" style="width:440px;" /></td> <div class="col-sm-10">
</tr> <input type="file" class="form-control" name="icon" value="{text allowEmpty=true value=$bm_prefs.ssl_url}" placeholder="{lng p="icon"}" accept="image/*">
</table> </div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="add"} " /> <input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,71 +2,76 @@
<legend>{lng p="edit"}</legend> <legend>{lng p="edit"}</legend>
<form action="prefs.faq.php?do=edit&id={$faq.id}&save=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);"> <form action="prefs.faq.php?do=edit&id={$faq.id}&save=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="question"}</label>
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/faq32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="question"}:</td> <input type="text" class="form-control" name="frage" value="{$faq.frage}" placeholder="{lng p="question"}">
<td class="td2"><input type="text" style="width:85%;" name="frage" value="{$faq.frage}" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="type"}:</td> <label class="col-sm-2 col-form-label">{lng p="type"}</label>
<td class="td2"><select name="typ"> <div class="col-sm-10">
<select name="typ" class="form-select">
<option value="nli"{if $faq.typ=='nli'} selected="selected"{/if}>{lng p="nli"}</option> <option value="nli"{if $faq.typ=='nli'} selected="selected"{/if}>{lng p="nli"}</option>
<option value="li"{if $faq.typ=='li'} selected="selected"{/if}>{lng p="li"}</option> <option value="li"{if $faq.typ=='li'} selected="selected"{/if}>{lng p="li"}</option>
<option value="both"{if $faq.typ=='both'} selected="selected"{/if}>{lng p="both"}</option> <option value="both"{if $faq.typ=='both'} selected="selected"{/if}>{lng p="both"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="language"}:</td> <div class="mb-3 row">
<td class="td2"><select name="lang"> <label class="col-sm-2 col-form-label">{lng p="language"}</label>
<option value=":all:"{if $faq.lang==':all:'} selected="selected"{/if}>{lng p="all"}</option> <div class="col-sm-10">
<select name="lang" class="form-select">
<option value=":all:">{lng p="all"}</option>
<optgroup label="{lng p="languages"}"> <optgroup label="{lng p="languages"}">
{foreach from=$languages item=lang key=langID} {foreach from=$languages item=lang key=langID}
<option value="{$langID}"{if $faq.lang==$langID} selected="selected"{/if}>{text value=$lang.title}</option> <option value="{$langID}"{if $faq.lang==$langID} selected="selected"{/if}>{text value=$lang.title}</option>
{/foreach} {/foreach}
</optgroup> </optgroup>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="requires"}:</td> <div class="mb-3 row">
<td class="td2"><select name="required"> <label class="col-sm-2 col-form-label">{lng p="requires"}</label>
<option value=""{if !$faq.required} selected="selected"{/if}>------------</option> <div class="col-sm-10">
<select name="required" class="form-select">
<option value="">------------</option>
<optgroup label="{lng p="services"}"> <optgroup label="{lng p="services"}">
{foreach from=$requirements item=req key=reqID} {foreach from=$requirements item=req key=reqID}
<option value="{$reqID}"{if $faq.required==$reqID} selected="selected"{/if}>{$req}</option> <option value="{$reqID}"{if $faq.required==$reqID} selected="selected"{/if}>{$req}</option>
{/foreach} {/foreach}
</optgroup> </optgroup>
</select></td> </select>
</tr> </div>
<tr> </div>
<td colspan="2" style="border: 1px solid #DDDDDD;background-color:#FFFFFF;"> <div class="mb-3 row">
<div class="col-sm-12">
<textarea name="antwort" id="antwort" class="plainTextArea" style="width:100%;height:220px;">{$faq.antwort}</textarea> <textarea name="antwort" id="antwort" class="plainTextArea" style="width:100%;height:220px;">{$faq.antwort}</textarea>
<script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script> <script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script>
<script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script> <script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script>
<script> <script>
<!-- <!--
var editor = new htmlEditor('antwort'); var editor = new htmlEditor('antwort');
editor.disableIntro = true;
editor.init(); editor.init();
registerLoadAction('editor.start()'); registerLoadAction('editor.start()');
//--> //-->
</script> </script>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td> <div class="col-sm-12">
<select class="smallInput" onchange="editor.insertText(this.value);"> <select onchange="editor.insertText(this.value);" class="form-select">
<option value="">-- {lng p="vars"} --</option> <option value="">-- {lng p="vars"} --</option>
<option value="%%user%%">%%user%% ({lng p="email"})</option> <option value="%%user%%">%%user%% ({lng p="email"})</option>
<option value="%%wddomain%%">%%wddomain%% ({lng p="wddomain"})</option> <option value="%%wddomain%%">%%wddomain%% ({lng p="wddomain"})</option>
<option value="%%selfurl%%">%%selfurl%% ({lng p="selfurl"})</option> <option value="%%selfurl%%">%%selfurl%% ({lng p="selfurl"})</option>
<option value="%%hostname%%">%%hostname%% ({lng p="hostname"})</option> <option value="%%hostname%%">%%hostname%% ({lng p="hostname"})</option>
</select> </select>
</td> </div>
<td align="right"> </div>
<input class="button" type="submit" value=" {lng p="save"} " />
</td> <div class="text-end">
</tr> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</table> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,49 +2,52 @@
<legend>{lng p="faq"}</legend> <legend>{lng p="faq"}</legend>
<form action="prefs.faq.php?sid={$sid}" method="post" name="f1" onsubmit="spin(this)"> <form action="prefs.faq.php?sid={$sid}" method="post" name="f1" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width 25px; text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'faq_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'faq_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="question"}</th> <th>{lng p="question"}</th>
<th width="100">{lng p="language"}</th> <th style="100px;">{lng p="language"}</th>
<th width="120">{lng p="type"}</th> <th style="120px;">{lng p="type"}</th>
<th width="60">&nbsp;</th> <th style="60px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$faqs item=faq} {foreach from=$faqs item=faq}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/faq.png" border="0" alt="" width="16" height="16" /></td> <td class="text-center"><input type="checkbox" name="faq_{$faq.id}" /></td>
<td align="center"><input type="checkbox" name="faq_{$faq.id}" /></td>
<td><a href="prefs.faq.php?do=edit&id={$faq.id}&sid={$sid}">{$faq.frage}</a><br /><small>{lng p="requires"}: {if $faq.required}{$requirements[$faq.required]}{else}-{/if}</small></td> <td><a href="prefs.faq.php?do=edit&id={$faq.id}&sid={$sid}">{$faq.frage}</a><br /><small>{lng p="requires"}: {if $faq.required}{$requirements[$faq.required]}{else}-{/if}</small></td>
<td>{text value=$faq.lang}</td> <td>{text value=$faq.lang}</td>
<td>{text value=$faq.typ}</td> <td>{text value=$faq.typ}</td>
<td> <td class="text-nowrap">
<a href="prefs.faq.php?do=edit&id={$faq.id}&sid={$sid}"><img src="{$tpldir}images/edit.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
<a href="prefs.faq.php?delete={$faq.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.faq.php?do=edit&id={$faq.id}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-pen-to-square"></i></a>
<a href="prefs.faq.php?delete={$faq.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="6"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -52,44 +55,50 @@
<legend>{lng p="addfaq"}</legend> <legend>{lng p="addfaq"}</legend>
<form action="prefs.faq.php?add=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);"> <form action="prefs.faq.php?add=true&sid={$sid}" method="post" onsubmit="editor.submit();spin(this);">
<table width="100%"> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="question"}</label>
<td width="40" valign="top" rowspan="6"><img src="{$tpldir}images/faq32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="150">{lng p="question"}:</td> <input type="text" class="form-control" name="frage" value="" placeholder="{lng p="question"}">
<td class="td2"><input type="text" style="width:85%;" name="frage" value="" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="type"}:</td> <label class="col-sm-2 col-form-label">{lng p="type"}</label>
<td class="td2"><select name="typ"> <div class="col-sm-10">
<select name="typ" class="form-select">
<option value="nli">{lng p="nli"}</option> <option value="nli">{lng p="nli"}</option>
<option value="li">{lng p="li"}</option> <option value="li">{lng p="li"}</option>
<option value="both">{lng p="both"}</option> <option value="both">{lng p="both"}</option>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="language"}:</td> <div class="mb-3 row">
<td class="td2"><select name="lang"> <label class="col-sm-2 col-form-label">{lng p="language"}</label>
<div class="col-sm-10">
<select name="lang" class="form-select">
<option value=":all:">{lng p="all"}</option> <option value=":all:">{lng p="all"}</option>
<optgroup label="{lng p="languages"}"> <optgroup label="{lng p="languages"}">
{foreach from=$languages item=lang key=langID} {foreach from=$languages item=lang key=langID}
<option value="{$langID}">{text value=$lang.title}</option> <option value="{$langID}">{text value=$lang.title}</option>
{/foreach} {/foreach}
</optgroup> </optgroup>
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="requires"}:</td> <div class="mb-3 row">
<td class="td2"><select name="required"> <label class="col-sm-2 col-form-label">{lng p="requires"}</label>
<div class="col-sm-10">
<select name="required" class="form-select">
<option value="">------------</option> <option value="">------------</option>
<optgroup label="{lng p="services"}"> <optgroup label="{lng p="services"}">
{foreach from=$requirements item=req key=reqID} {foreach from=$requirements item=req key=reqID}
<option value="{$reqID}">{$req}</option> <option value="{$reqID}">{$req}</option>
{/foreach} {/foreach}
</optgroup> </optgroup>
</select></td> </select>
</tr> </div>
<tr> </div>
<td colspan="2" style="border: 1px solid #DDDDDD;background-color:#FFFFFF;"> <div class="mb-3 row">
<div class="col-sm-12">
<textarea name="antwort" id="antwort" class="plainTextArea" style="width:100%;height:220px;"></textarea> <textarea name="antwort" id="antwort" class="plainTextArea" style="width:100%;height:220px;"></textarea>
<script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script> <script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script>
<script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script> <script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script>
@ -100,22 +109,22 @@
registerLoadAction('editor.start()'); registerLoadAction('editor.start()');
//--> //-->
</script> </script>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td> <div class="col-sm-12">
<select class="smallInput" onchange="editor.insertText(this.value);"> <select onchange="editor.insertText(this.value);" class="form-select">
<option value="">-- {lng p="vars"} --</option> <option value="">-- {lng p="vars"} --</option>
<option value="%%user%%">%%user%% ({lng p="email"})</option> <option value="%%user%%">%%user%% ({lng p="email"})</option>
<option value="%%wddomain%%">%%wddomain%% ({lng p="wddomain"})</option> <option value="%%wddomain%%">%%wddomain%% ({lng p="wddomain"})</option>
<option value="%%selfurl%%">%%selfurl%% ({lng p="selfurl"})</option> <option value="%%selfurl%%">%%selfurl%% ({lng p="selfurl"})</option>
<option value="%%hostname%%">%%hostname%% ({lng p="hostname"})</option> <option value="%%hostname%%">%%hostname%% ({lng p="hostname"})</option>
</select> </select>
</td> </div>
<td align="right"> </div>
<input class="button" type="submit" value=" {lng p="add"} " />
</td> <div class="text-end">
</tr> <input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</table> </div>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,54 +2,47 @@
<legend>{lng p="language"}</legend> <legend>{lng p="language"}</legend>
<form action="prefs.languages.php?action=texts&sid={$sid}" method="post"> <form action="prefs.languages.php?action=texts&sid={$sid}" method="post">
<center> <div class="mb-3 row">
<table> <label class="col-sm-2 col-form-label">{lng p="language"}</label>
<tr> <div class="col-sm-10">
<td>{lng p="language"}:</td> <div class="btn-group">
<td><select name="lang"> <select name="lang" class="form-select">
{foreach from=$languages key=langID item=lang} {foreach from=$languages key=langID item=lang}
<option value="{$langID}"{if $langID==$selectedLang} selected="selected"{/if}>{text value=$lang.title}</option> <option value="{$langID}"{if $langID==$selectedLang} selected="selected"{/if}>{text value=$lang.title}</option>
{/foreach} {/foreach}
</select></td> </select>
<td><input class="button" type="submit" value=" {lng p="ok"} &raquo; " /></td> <input type="submit" value="{lng p="ok"}" class="btn btn-dark-lt" />
</tr> </div>
</table> </div>
</center> </div>
</form> </form>
</fieldset> </fieldset>
{if $selectedLang} {if $selectedLang}
<script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script> <script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script>
<script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script> <script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script>
<script> <script>
<!-- <!--
var editors = []; var editors = [];
//--> //-->
</script> </script>
<fieldset> <fieldset>
<legend>{lng p="customtexts"}</legend> <legend>{lng p="customtexts"}</legend>
<form action="prefs.languages.php?action=texts&lang={$selectedLang}&save=true&sid={$sid}" method="post" onsubmit="spin(this)"> <form action="prefs.languages.php?action=texts&lang={$selectedLang}&save=true&sid={$sid}" method="post" onsubmit="spin(this)">
<p align="right"> <div class="mb-3 text-end">
<input class="button" type="submit" value=" {lng p="save"} " /> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</p> </div>
<table class="list">
<tr>
<th width="20">&nbsp;</th>
<th width="220">{lng p="title"}</th>
<th>{lng p="text"}</th>
</tr>
{foreach from=$texts item=text} {foreach from=$texts item=text}
{cycle name=class assign=class values="td1,td2"} <a name="{$text.key}" />
<tr class="{$class}"> <div class="mb-3 row">
<td><img src="{$tpldir}images/phrases.png" border="0" alt="" width="16" height="16" /></td> <label class="col-sm-2 col-form-label">{$text.title}<br /><small>{text value=$text.key}</small></label>
<td><a name="{$text.key}" />{$text.title}<br /><small>{text value=$text.key}</small></td> <div class="col-sm-10">
<td>
{if $customTextsHTML[$text.key]}<div style="border: 1px solid #DDDDDD;background-color:#FFFFFF;">{/if} {if $customTextsHTML[$text.key]}<div style="border: 1px solid #DDDDDD;background-color:#FFFFFF;">{/if}
<textarea onfocus="this.style.height='240px';" onblur="this.style.height='100px';" style="width:99%;height:{if $customTextsHTML[$text.key]}350{else}100{/if}px;" name="text-{$text.key}" id="text-{$text.key}">{text value=$text.text allowEmpty=true}</textarea> <textarea class="form-control" onfocus="this.style.height='240px';" onblur="this.style.height='100px';" style="height:{if $customTextsHTML[$text.key]}350{else}100{/if}px;" name="text-{$text.key}" id="text-{$text.key}">{text value=$text.text allowEmpty=true}</textarea>
{if $customTextsHTML[$text.key]} {if $customTextsHTML[$text.key]}
</div> </div>
<script> <script>
@ -61,14 +54,13 @@
//--> //-->
</script> </script>
{/if} {/if}
</td> </div>
</tr> </div>
{/foreach} {/foreach}
</table>
<p align="right"> <div class="mb-3 text-end">
<input class="button" type="submit" value=" {lng p="save"} " /> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
</p> </div>
</form> </form>
</fieldset> </fieldset>
{/if} {/if}

View file

@ -2,46 +2,50 @@
<legend>{lng p="languages"}</legend> <legend>{lng p="languages"}</legend>
<form action="prefs.languages.php?sid={$sid}" name="f1" method="post" onsubmit="spin(this)"> <form action="prefs.languages.php?sid={$sid}" name="f1" method="post" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'lang_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th> <th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'lang_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="language"}</th> <th>{lng p="language"}</th>
<th>{lng p="author"}</th> <th>{lng p="author"}</th>
<th width="60">&nbsp;</th> <th width="60">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$languages item=language key=langID} {foreach from=$languages item=language key=langID}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/language.png" border="0" alt="" width="16" height="16" /></td>
<td align="center">{if $language.writeable && !$language.default}<input type="checkbox" name="lang_{$langID}" />{/if}</td> <td align="center">{if $language.writeable && !$language.default}<input type="checkbox" name="lang_{$langID}" />{/if}</td>
<td>{text value=$language.title}<br /><small>{text value=$language.charset}, {text value=$language.locale}</small></td> <td>{text value=$language.title}<br /><small>{text value=$language.charset}, {text value=$language.locale}</small></td>
<td>{text value=$language.author}<br /><small>{text value=$language.authorWeb allowEmpty=true}</small></td> <td>{text value=$language.author}<br /><small>{text value=$language.authorWeb allowEmpty=true}</small></td>
<td> <td class="text-nowrap">
<a href="prefs.languages.php?action=texts&lang={$langID}&sid={$sid}"><img src="{$tpldir}images/phrases.png" border="0" alt="{lng p="customtexts"}" width="16" height="16" /></a> <div class="btn-group btn-group-sm">
{if $language.writeable && !$language.default}<a href="prefs.languages.php?delete={$langID}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="delete"}" width="16" height="16" /></a>{/if} <a href="prefs.languages.php?action=texts&lang={$langID}&sid={$sid}" class="btn btn-sm"><i class="fa-regular fa-comment"></i></a>
{if $language.writeable && !$language.default}<a href="prefs.languages.php?delete={$langID}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>{/if}
</div>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="8"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
@ -49,26 +53,20 @@
<legend>{lng p="addlanguage"}</legend> <legend>{lng p="addlanguage"}</legend>
<form action="prefs.languages.php?add=true&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)"> <form action="prefs.languages.php?add=true&sid={$sid}" method="post" enctype="multipart/form-data" onsubmit="spin(this)">
<p> <div class="alert alert-warning">{lng p="sourcewarning"}</div>
{lng p="addlang_desc"} <p>{lng p="addlang_desc"}</p>
</p>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-check-label">{lng p="langfile"}</label>
<td width="40" valign="top"><img src="{$tpldir}images/lang32.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td>{lng p="langfile"}:<br /> <label class="form-check">
<input type="file" name="langfile" style="width:440px;" accept=".lang.php" /></td> <input type="file" name="langfile" class="form-control" accept=".lang.php" />
</tr> </label>
</table> </div>
</div>
<p> <div class="text-end">
<div style="float:left;"> <input class="btn btn-primary" type="submit" value="{lng p="install"}" />
<img src="{$tpldir}images/warning.png" border="0" alt="" align="absmiddle" width="16" height="16" />
{lng p="sourcewarning"}
</div> </div>
<div style="float:right;">
<input class="button" type="submit" value=" {lng p="install"} " />
</div>
</p>
</form> </form>
</fieldset> </fieldset>

View file

@ -2,68 +2,73 @@
<legend>{lng p="lockedusernames"}</legend> <legend>{lng p="lockedusernames"}</legend>
<form action="prefs.common.php?action=lockedusernames&sid={$sid}" name="f1" method="post" onsubmit="spin(this)"> <form action="prefs.common.php?action=lockedusernames&sid={$sid}" name="f1" method="post" onsubmit="spin(this)">
<table class="list"> <div class="card">
<div class="table-responsive">
<table class="table table-vcenter table-striped">
<thead>
<tr> <tr>
<th width="20">&nbsp;</th> <th style="width: 25px; text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'locked_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th width="25" style="text-align:center;"><a href="javascript:invertSelection(document.forms.f1,'locked_');"><img src="{$tpldir}images/dot.png" border="0" alt="" width="10" height="8" /></a></th>
<th>{lng p="username"}</th> <th>{lng p="username"}</th>
<th width="55">&nbsp;</th> <th style="width: 55px;">&nbsp;</th>
</tr> </tr>
</thead>
<tbody>
{foreach from=$lockedUsernames item=locked} {foreach from=$lockedUsernames item=locked}
{cycle name=class values="td1,td2" assign=class} {cycle name=class values="td1,td2" assign=class}
<tr class="{$class}"> <tr class="{$class}">
<td align="center"><img src="{$tpldir}images/lockedusername.png" border="0" alt="" width="16" height="16" /></td>
<td><input type="checkbox" name="locked_{$locked.id}" /></td> <td><input type="checkbox" name="locked_{$locked.id}" /></td>
<td>{$locked.type} &quot;{text value=$locked.username}&quot;</td> <td>{$locked.type} &quot;{text value=$locked.username}&quot;</td>
<td> <td>
<a href="prefs.common.php?action=lockedusernames&delete={$locked.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');"><img src="{$tpldir}images/delete.png" border="0" alt="{lng p="edit"}" width="16" height="16" /></a> <a href="prefs.common.php?action=lockedusernames&delete={$locked.id}&sid={$sid}" onclick="return confirm('{lng p="realdel"}');" class="btn btn-sm"><i class="fa-regular fa-trash-can"></i></a>
</td> </td>
</tr> </tr>
{/foreach} {/foreach}
</tbody>
<tr> </table>
<td class="footer" colspan="4"> </div>
<div style="float:left;"> <div class="card-footer">
{lng p="action"}: <select name="massAction" class="smallInput"> <div style="float: left;">{lng p="action"}:&nbsp;</div>
<div style="float: left;">
<div class="btn-group btn-group-sm">
<select name="massAction" class="form-select form-select-sm">
<option value="-">------------</option> <option value="-">------------</option>
<optgroup label="{lng p="actions"}"> <optgroup label="{lng p="actions"}">
<option value="delete">{lng p="delete"}</option> <option value="delete">{lng p="delete"}</option>
</optgroup> </optgroup>
</select>&nbsp; </select>
<input type="submit" name="executeMassAction" value="{lng p="execute"}" class="btn btn-sm btn-dark-lt" />
</div>
</div>
</div> </div>
<div style="float:left;">
<input type="submit" name="executeMassAction" value=" {lng p="execute"} " class="smallInput" />
</div> </div>
</td>
</tr>
</table>
</form> </form>
</fieldset> </fieldset>
<fieldset> <form action="prefs.common.php?action=lockedusernames&add=true&sid={$sid}" method="post" onsubmit="spin(this)">
<fieldset>
<legend>{lng p="addlockedusername"}</legend> <legend>{lng p="addlockedusername"}</legend>
<form action="prefs.common.php?action=lockedusernames&add=true&sid={$sid}" method="post" onsubmit="spin(this)"> <div class="row">
<table width="100%"> <div class="col-md-6">
<tr> <div class="mb-3">
<td width="40" valign="top" rowspan="2"><img src="{$tpldir}images/lockedusername32.png" border="0" alt="" width="32" height="32" /></td> <label class="form-label">{lng p="type"}</label>
<td class="td1" width="150">{lng p="type"}:</td> <select name="typ" class="form-select">
<td class="td2"><select name="typ">
{foreach from=$lockedTypeTable key=id item=text} {foreach from=$lockedTypeTable key=id item=text}
<option value="{$id}">{$text}</option> <option value="{$id}">{$text}</option>
{/foreach} {/foreach}
</select></td> </select>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="username"}:</td> <div class="col-md-6">
<td class="td2"><input type="text" style="width:85%;" name="benutzername" value="" /></td> <div class="mb-3">
</tr> <label class="form-label">{lng p="username"}</label>
</table> <input type="text" class="form-control" name="benutzername" value="" placeholder="{lng p="username"}">
</div>
</div>
</div>
<p align="right"> <div class="text-end">
<input class="button" type="submit" value=" {lng p="add"} " /> <input class="btn btn-primary" type="submit" value="{lng p="add"}" />
</p> </div>
</form> </fieldset>
</fieldset> </form>

View file

@ -2,178 +2,225 @@
<fieldset> <fieldset>
<legend>{lng p="payments"}</legend> <legend>{lng p="payments"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="currency"}</label>
<td width="40" valign="top" rowspan="4"><img src="{$tpldir}images/ico_prefs_payments.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="currency"}:</td> <input type="text" class="form-control" name="currency" value="{$bm_prefs.currency}" placeholder="{lng p="currency"}">
<td class="td2"><input type="text" name="currency" value="{$bm_prefs.currency}" size="8" /></td> </div>
<td class="td">&nbsp;</td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="pay_notification"}</label>
<td class="td1">{lng p="pay_notification"}:</td> <div class="col-sm-10">
<td class="td2"><input id="send_pay_notification" name="send_pay_notification"{if $bm_prefs.send_pay_notification=='yes'} checked="checked"{/if} type="checkbox" /><label for="send_pay_notification"> {lng p="to2"}: </label><input type="text" name="pay_notification_to" value="{if isset($bm_prefs.pay_notification_to)}{text value=$bm_prefs.pay_notification_to allowEmpty=true}{/if}" size="24" /></td> <div class="input-group mb-2">
</tr> <span class="input-group-text">
<tr> <input class="form-check-input m-0" type="checkbox" name="send_pay_notification"{if $bm_prefs.send_pay_notification=='yes'} checked="checked"{/if}>
<td class="td1">{lng p="sysmailsender"}:</td> </span>
<td class="td2"> <span class="input-group-text">{lng p="to2"}:</span>
"<input type="text" name="pay_emailfrom" value="{if isset($bm_prefs.pay_emailfrom)}{text value=$bm_prefs.pay_emailfrom allowEmpty=true}{/if}" size="14" />" <input type="text" class="form-control" name="pay_notification_to" value="{if isset($bm_prefs.pay_notification_to)}{text value=$bm_prefs.pay_notification_to allowEmpty=true}{/if}" placeholder="{lng p="pay_notification"}">
&lt;<input type="text" name="pay_emailfromemail" value="{email value=$bm_prefs.pay_emailfromemail}" size="22" />&gt; </div>
</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="vat"}:</td> <label class="col-sm-2 col-form-label">{lng p="sysmailsender"}</label>
<td class="td2"> <div class="col-sm-10">
<select name="mwst"> <div class="input-group mb-2">
<span class="input-group-text">"</span>
<input type="text" class="form-control" name="pay_emailfrom" value="{if isset($bm_prefs.pay_emailfrom)}{text value=$bm_prefs.pay_emailfrom allowEmpty=true}{/if}" placeholder="{lng p="name"}">
<span class="input-group-text">" <</span>
<input type="text" class="form-control" name="pay_emailfromemail" value="{email value=$bm_prefs.pay_emailfromemail}" placeholder="{lng p="email"}">
<span class="input-group-text">></span>
</div>
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="vat"}</label>
<div class="col-sm-10">
<select name="mwst" class="form-select">
<option value="add"{if $bm_prefs.mwst=='add'} selected="selected"{/if}>{lng p="vat_add"}</option> <option value="add"{if $bm_prefs.mwst=='add'} selected="selected"{/if}>{lng p="vat_add"}</option>
<option value="enthalten"{if $bm_prefs.mwst=='enthalten'} selected="selected"{/if}>{lng p="vat_enthalten"}</option> <option value="enthalten"{if $bm_prefs.mwst=='enthalten'} selected="selected"{/if}>{lng p="vat_enthalten"}</option>
<option value="nomwst"{if $bm_prefs.mwst=='nomwst'} selected="selected"{/if}>{lng p="vat_nomwst"}</option> <option value="nomwst"{if $bm_prefs.mwst=='nomwst'} selected="selected"{/if}>{lng p="vat_nomwst"}</option>
</select> </select>
<small> <small>{lng p="vatratenotice"} <a href="prefs.countries.php?sid={$sid}">{lng p="countries"}</a>.</small>
&nbsp; {lng p="vatratenotice"} <a href="prefs.countries.php?sid={$sid}">{lng p="countries"}</a>. </div>
</small> </div>
</td>
</tr>
</table>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>PayPal</legend> <legend>PayPal</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-check-label">{lng p="enablechrgpaypal"}</label>
<td width="40" valign="top" rowspan="3"><img src="{$tpldir}images/ico_pay_paypal.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="enablechrgpaypal"}?</td> <label class="form-check">
<td class="td2"><input name="enable_paypal"{if $bm_prefs.enable_paypal=='yes'} checked="checked"{/if} type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="enable_paypal"{if $bm_prefs.enable_paypal=='yes'} checked="checked"{/if}>
<td class="td2">&nbsp;</td> </label>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="default"}?</td> <div class="mb-3 row">
<td class="td2"><input type="radio" name="default_paymethod" value="1"{if $bm_prefs.default_paymethod==1} checked="checked"{/if} /></td> <label class="col-sm-2 col-form-check-label">{lng p="default"}</label>
</tr> <div class="col-sm-10">
<tr> <label class="form-check">
<td class="td1" width="220">{lng p="paypalacc"}:</td> <input class="form-check-input" type="radio" name="default_paymethod" value="1"{if $bm_prefs.default_paymethod==1} checked="checked"{/if}>
<td class="td2"><input type="text" name="paypal_mail" value="{$bm_prefs.paypal_mail}" size="36" /></td> </label>
<td class="td2">&nbsp;</td> </div>
</tr> </div>
</table> <div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="paypalacc"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="paypal_mail" value="{$bm_prefs.paypal_mail}" placeholder="{lng p="paypalacc"}">
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>sofort&uuml;berweisung.de</legend> <legend>sofort&uuml;berweisung.de</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-check-label">{lng p="enablechrgsu"}</label>
<td width="40" valign="top" rowspan="7"><img src="{$tpldir}images/ico_pay_su.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="enablechrgsu"}?</td> <label class="form-check">
<td class="td2"><input name="enable_su"{if $bm_prefs.enable_su=='yes'} checked="checked"{/if} id="su_enable" type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="enable_su"{if $bm_prefs.enable_su=='yes'} checked="checked"{/if}>
<td class="td2">&nbsp;</td> </label>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="default"}?</td> <div class="mb-3 row">
<td class="td2"><input type="radio" name="default_paymethod" value="2"{if $bm_prefs.default_paymethod==2} checked="checked"{/if} /></td> <label class="col-sm-2 col-form-check-label">{lng p="default"}</label>
</tr> <div class="col-sm-10">
<tr> <label class="form-check">
<td class="td1">{lng p="sukdnr"}:</td> <input class="form-check-input" type="radio" name="default_paymethod" value="2"{if $bm_prefs.default_paymethod==2} checked="checked"{/if}>
<td class="td2"><input type="text" name="su_kdnr" value="{$bm_prefs.su_kdnr}" id="su_kdnr" size="24" /></td> </label>
<td class="td2">&nbsp;</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="suprjnr"}:</td> <label class="col-sm-2 col-form-label">{lng p="sukdnr"}</label>
<td class="td2"><input type="text" name="su_prjnr" value="{$bm_prefs.su_prjnr}" id="su_prjnr" size="24" /></td> <div class="col-sm-10">
<td class="td2" style="padding-left:10px;"> <input type="text" class="form-control" name="su_kdnr" value="{$bm_prefs.su_kdnr}" placeholder="{lng p="sukdnr"}">
<input class="button" type="button" value=" {lng p="su_createnew"} " onclick="window.open('about:blank','suWindow','width=990,height=800,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');EBID('suForm').submit();" /> </div>
</td> </div>
</tr> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-label">{lng p="suprjnr"}</label>
<td class="td1">{lng p="suprjpass"}:</td> <div class="col-sm-10">
<td class="td2"><input type="text" name="su_prjpass" value="{$bm_prefs.su_prjpass}" id="su_prjpass" size="24" /></td> <div class="input-group">
<td class="td2">&nbsp;</td> <input type="text" class="form-control" name="su_prjnr" value="{$bm_prefs.su_prjnr}" placeholder="{lng p="suprjnr"}">
</tr> <input class="btn btn-muted" type="button" value=" {lng p="su_createnew"} " onclick="window.open('about:blank','suWindow','width=990,height=800,scrollbars=yes,location=yes,menubar=yes,resizable=yes,status=yes,toolbar=yes');EBID('suForm').submit();" />
<tr> </div>
<td class="td1">{lng p="sunotifypass"}:</td> </div>
<td class="td2"><input type="text" name="su_notifypass" value="{$bm_prefs.su_notifypass}" id="su_notifypass" size="24" /></td> </div>
<td class="td2">&nbsp;</td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="suprjpass"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="suinputcheck"}?</td> <input type="text" class="form-control" name="su_prjpass" value="{$bm_prefs.su_prjpass}" placeholder="{lng p="suprjpass"}">
<td class="td2"><input name="su_inputcheck"{if $bm_prefs.su_inputcheck=='yes'} checked="checked"{/if} id="su_inputcheck" type="checkbox" /></td> </div>
<td class="td2">&nbsp;</td> </div>
</tr> <div class="mb-3 row">
</table> <label class="col-sm-2 col-form-label">{lng p="sunotifypass"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="su_notifypass" value="{$bm_prefs.su_notifypass}" placeholder="{lng p="sunotifypass"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-check-label">{lng p="suinputcheck"}</label>
<div class="col-sm-10">
<label class="form-check">
<input class="form-check-input" type="checkbox" name="su_inputcheck"{if $bm_prefs.su_inputcheck=='yes'} checked="checked"{/if}>
</label>
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>Skrill (Moneybookers)</legend> <legend>Skrill (Moneybookers)</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-check-label">{lng p="enablechrgskrill"}</label>
<td width="40" valign="top" rowspan="4"><img src="{$tpldir}images/ico_pay_skrill.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="enablechrgskrill"}?</td> <label class="form-check">
<td class="td2"><input name="enable_skrill"{if $bm_prefs.enable_skrill=='yes'} checked="checked"{/if} type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="enable_skrill"{if $bm_prefs.enable_skrill=='yes'} checked="checked"{/if}>
<td class="td2">&nbsp;</td> </label>
</tr> </div>
<tr> </div>
<td class="td1">{lng p="default"}?</td> <div class="mb-3 row">
<td class="td2"><input type="radio" name="default_paymethod" value="1"{if $bm_prefs.default_paymethod==3} checked="checked"{/if} /></td> <label class="col-sm-2 col-form-check-label">{lng p="default"}</label>
</tr> <div class="col-sm-10">
<tr> <label class="form-check">
<td class="td1">{lng p="skrillacc"}:</td> <input class="form-check-input" type="radio" name="default_paymethod" value="3"{if $bm_prefs.default_paymethod==3} checked="checked"{/if}>
<td class="td2"><input type="text" name="skrill_mail" value="{$bm_prefs.skrill_mail}" size="36" /></td> </label>
<td class="td2">&nbsp;</td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="skrillsecret"}:</td> <label class="col-sm-2 col-form-label">{lng p="skrillacc"}</label>
<td class="td2"><input type="text" name="skrill_secret" value="{$bm_prefs.skrill_secret}" id="skrill_secret" size="24" /></td> <div class="col-sm-10">
<td class="td2">&nbsp;</td> <input type="text" class="form-control" name="skrill_mail" value="{$bm_prefs.skrill_mail}" placeholder="{lng p="skrillacc"}">
</tr> </div>
</table> </div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="skrillsecret"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="skrill_secret" value="{$bm_prefs.skrill_secret}" placeholder="{lng p="skrillsecret"}">
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="banktransfer"}</legend> <legend>{lng p="banktransfer"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-check-label">{lng p="enablebanktransfer"}</label>
<td width="40" valign="top" rowspan="8"><img src="{$tpldir}images/ico_pay_banktransfer.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="enablebanktransfer"}?</td> <label class="form-check">
<td class="td2"><input name="enable_vk"{if $bm_prefs.enable_vk=='yes'} checked="checked"{/if} type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="enable_vk"{if $bm_prefs.enable_vk=='yes'} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="default"}?</td> </div>
<td class="td2"><input type="radio" name="default_paymethod" value="0"{if $bm_prefs.default_paymethod==0} checked="checked"{/if} /></td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-check-label">{lng p="default"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="kto_inh"}:</td> <label class="form-check">
<td class="td2"><input type="text" name="vk_kto_inh" value="{text allowEmpty=true value=$bm_prefs.vk_kto_inh}" size="24" /></td> <input class="form-check-input" type="radio" name="default_paymethod" value="0"{if $bm_prefs.default_paymethod==0} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="kto_nr"}:</td> </div>
<td class="td2"><input type="text" name="vk_kto_nr" value="{text allowEmpty=true value=$bm_prefs.vk_kto_nr}" size="24" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="kto_inh"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="kto_blz"}:</td> <input type="text" class="form-control" name="vk_kto_inh" value="{text allowEmpty=true value=$bm_prefs.vk_kto_inh}" placeholder="{lng p="kto_inh"}">
<td class="td2"><input type="text" name="vk_kto_blz" value="{text allowEmpty=true value=$bm_prefs.vk_kto_blz}" size="24" /></td> </div>
</tr> </div>
<tr> <div class="mb-3 row">
<td class="td1">{lng p="kto_inst"}:</td> <label class="col-sm-2 col-form-label">{lng p="kto_nr"}</label>
<td class="td2"><input type="text" name="vk_kto_inst" value="{text allowEmpty=true value=$bm_prefs.vk_kto_inst}" size="24" /></td> <div class="col-sm-10">
</tr> <input type="text" class="form-control" name="vk_kto_nr" value="{text allowEmpty=true value=$bm_prefs.vk_kto_nr}" placeholder="{lng p="kto_nr"}">
<tr> </div>
<td class="td1">{lng p="kto_iban"}:</td> </div>
<td class="td2"><input type="text" name="vk_kto_iban" value="{text allowEmpty=true value=$bm_prefs.vk_kto_iban}" size="24" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="kto_blz"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="kto_bic"}:</td> <input type="text" class="form-control" name="vk_kto_blz" value="{text allowEmpty=true value=$bm_prefs.vk_kto_blz}" placeholder="{lng p="kto_blz"}">
<td class="td2"><input type="text" name="vk_kto_bic" value="{text allowEmpty=true value=$bm_prefs.vk_kto_bic}" size="24" /></td> </div>
</tr> </div>
</table> <div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="kto_inst"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="vk_kto_inst" value="{text allowEmpty=true value=$bm_prefs.vk_kto_inst}" placeholder="{lng p="kto_inst"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="kto_iban"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="vk_kto_iban" value="{text allowEmpty=true value=$bm_prefs.vk_kto_iban}" placeholder="{lng p="kto_iban"}">
</div>
</div>
<div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="kto_bic"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="vk_kto_bic" value="{text allowEmpty=true value=$bm_prefs.vk_kto_bic}" placeholder="{lng p="kto_bic"}">
</div>
</div>
</fieldset> </fieldset>
<p> <div class="text-end">
<div style="float:right" class="buttons"> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p>
</form> </form>
<form action="https://www.sofort-ueberweisung.de/payment/createNew/" method="post" target="suWindow" id="suForm"> <form action="https://www.sofort-ueberweisung.de/payment/createNew/" method="post" target="suWindow" id="suForm">

View file

@ -2,29 +2,33 @@
<fieldset> <fieldset>
<legend>{lng p="invoices"}</legend> <legend>{lng p="invoices"}</legend>
<table> <div class="mb-3 row">
<tr> <label class="col-sm-2 col-form-check-label">{lng p="sendrg"}</label>
<td width="40" valign="top" rowspan="3"><img src="{$tpldir}images/ico_prefs_invoices.png" border="0" alt="" width="32" height="32" /></td> <div class="col-sm-10">
<td class="td1" width="220">{lng p="sendrg"}?</td> <label class="form-check">
<td class="td2"><input name="sendrg"{if $bm_prefs.sendrg=='yes'} checked="checked"{/if} type="checkbox" /></td> <input class="form-check-input" type="checkbox" name="sendrg"{if $bm_prefs.sendrg=='yes'} checked="checked"{/if}>
</tr> </label>
<tr> </div>
<td class="td1">{lng p="rgnrfmt"}:</td> </div>
<td class="td2"><input type="text" name="rgnrfmt" value="{text allowEmpty=true value=$bm_prefs.rgnrfmt}" size="12" /></td> <div class="mb-3 row">
</tr> <label class="col-sm-2 col-form-label">{lng p="rgnrfmt"}</label>
<tr> <div class="col-sm-10">
<td class="td1">{lng p="kdnrfmt"}:</td> <input type="text" class="form-control" name="rgnrfmt" value="{text allowEmpty=true value=$bm_prefs.rgnrfmt}" placeholder="{lng p="rgnrfmt"}">
<td class="td2"><input type="text" name="kdnrfmt" value="{text allowEmpty=true value=$bm_prefs.kdnrfmt}" size="12" /></td> </div>
</tr> </div>
</table> <div class="mb-3 row">
<label class="col-sm-2 col-form-label">{lng p="kdnrfmt"}</label>
<div class="col-sm-10">
<input type="text" class="form-control" name="kdnrfmt" value="{text allowEmpty=true value=$bm_prefs.kdnrfmt}" placeholder="{lng p="kdnrfmt"}">
</div>
</div>
</fieldset> </fieldset>
<fieldset> <fieldset>
<legend>{lng p="rgtemplate"}</legend> <legend>{lng p="rgtemplate"}</legend>
<table width="100%"> <div class="mb-3 row">
<tr> <div class="col-sm-12">
<td style="border: 1px solid #DDDDDD;background-color:#FFFFFF;">
<textarea name="rgtemplate" id="rgtemplate" class="plainTextArea" style="width:100%;height:500px;">{text value=$bm_prefs.rgtemplate allowEmpty=true}</textarea> <textarea name="rgtemplate" id="rgtemplate" class="plainTextArea" style="width:100%;height:500px;">{text value=$bm_prefs.rgtemplate allowEmpty=true}</textarea>
<script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script> <script src="../clientlib/wysiwyg.js?{fileDateSig file="../../clientlib/wysiwyg.js"}"></script>
<script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script> <script type="text/javascript" src="../clientlib/ckeditor/ckeditor.js?{fileDateSig file="../../clientlib/ckeditor/ckeditor.js"}"></script>
@ -37,12 +41,11 @@
registerLoadAction('editor.start()'); registerLoadAction('editor.start()');
//--> //-->
</script> </script>
</td></tr></table> </div>
</div>
</fieldset> </fieldset>
<p> <div class="text-end">
<div style="float:right" class="buttons"> <input class="btn btn-primary" type="submit" value="{lng p="save"}" />
<input class="button" type="submit" value=" {lng p="save"} " />
</div> </div>
</p>
</form> </form>

Some files were not shown because too many files have changed in this diff Show more