mirror of
https://gitlab.com/Shinobi-Systems/ShinobiCE.git
synced 2025-03-09 15:40:15 +00:00
Tickly Tiger
This commit is contained in:
parent
301337c140
commit
a80c1e4e97
78 changed files with 28107 additions and 1402 deletions
|
@ -11,7 +11,6 @@
|
|||
<div class="modal-body"></div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default pull-left" data-dismiss="modal"><i class="fa fa-times"></i> <%- lang['Close'] %></button>
|
||||
<button type="button" class="btn btn-success confirmaction"><%- lang['Save'] %></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -21,17 +20,29 @@
|
|||
$.confirm={e:$('#confirm_window')};
|
||||
$.confirm.title=$.confirm.e.find('.modal-title span')
|
||||
$.confirm.body=$.confirm.e.find('.modal-body')
|
||||
$.confirm.footer=$.confirm.e.find('.modal-footer')
|
||||
$.confirm.click=function(x,e){
|
||||
if(!x.class){x.class='btn-success'}
|
||||
if(!x.title){x.title='Save changes'}
|
||||
x.e=$.confirm.e.find('.confirmaction').removeClass('btn-danger btn-warning btn-primary btn-success').addClass(x.class).text(x.title);
|
||||
x.e.click(function(){
|
||||
x.e.unbind('click');$.confirm.e.modal('hide');e();
|
||||
})
|
||||
$.confirm.footer.find('.confirmaction').remove()
|
||||
var createButton = function(x,place,callback){
|
||||
$.confirm.footer.prepend('<button type="button" class="btn '+x.class+' confirmaction confirmaction'+place+'">'+x.title+'</button>')
|
||||
if(!x.class){x.class='btn-success'}
|
||||
if(!x.title){x.title='Save changes'}
|
||||
$.confirm.footer.find('.confirmaction'+place).click(function(){
|
||||
$.confirm.e.modal('hide')
|
||||
callback();
|
||||
})
|
||||
}
|
||||
if(x instanceof Array){
|
||||
$.each(x,function(place,x){
|
||||
createButton(x,place,x.callback)
|
||||
})
|
||||
}else{
|
||||
createButton(x,0,e)
|
||||
}
|
||||
}
|
||||
$(document).ready(function(){
|
||||
$.confirm.e.on('hidden.bs.modal', function () {
|
||||
$.confirm.e.find('.confirmaction').unbind('click');
|
||||
$.confirm.footer.find('.confirmaction').remove()
|
||||
})
|
||||
})
|
||||
</script>
|
12
web/pages/blocks/header-favicon.ejs
Normal file
12
web/pages/blocks/header-favicon.ejs
Normal file
|
@ -0,0 +1,12 @@
|
|||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||
<meta name="apple-mobile-web-app-title" content="Shinobi">
|
||||
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="<%-originalURL%>libs/img/icon/apple-touch-icon-57x57.png" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="<%-originalURL%>libs/img/icon/apple-touch-icon-72x72.png" />
|
||||
<link rel="apple-touch-icon" sizes="76x76" href="<%-originalURL%>libs/img/icon/apple-touch-icon-76x76.png" />
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="<%-originalURL%>libs/img/icon/apple-touch-icon-114x114.png" />
|
||||
<link rel="apple-touch-icon" sizes="120x120" href="<%-originalURL%>libs/img/icon/apple-touch-icon-120x120.png" />
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="<%-originalURL%>libs/img/icon/apple-touch-icon-144x144.png" />
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="<%-originalURL%>libs/img/icon/apple-touch-icon-152x152.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="<%-originalURL%>libs/img/icon/apple-touch-icon-180x180.png" />
|
5
web/pages/blocks/header-meta.ejs
Normal file
5
web/pages/blocks/header-meta.ejs
Normal file
|
@ -0,0 +1,5 @@
|
|||
<meta charset="utf-8">
|
||||
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
|
||||
<meta name="viewport" content="width=device-width, maximum-scale=1, user-scalable=no" />
|
||||
<meta name="description" content="Shinobi, Open Source CCTV Technology">
|
||||
<meta name="author" content="Moe Alam, moeiscool on GitHub">
|
|
@ -1,36 +1,21 @@
|
|||
<head>
|
||||
<title><%-lang.Shinobi%></title>
|
||||
<meta charset="utf-8">
|
||||
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
|
||||
<meta name="viewport" content="width=device-width, maximum-scale=1, user-scalable=no" />
|
||||
<meta name="description" content="Shinobi, Open Source CCTV Technology">
|
||||
<meta name="author" content="Moe Alam, moeiscool on GitHub">
|
||||
<% include header-meta.ejs %>
|
||||
<meta http-equiv="content-type" content="text/html;charset=UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<link rel="stylesheet" href="libs/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="libs/css/login.css">
|
||||
<link rel="stylesheet" href="libs/css/material.min.css">
|
||||
<link rel="stylesheet" href="libs/css/material.style.css">
|
||||
<link rel="stylesheet" href="<%-originalURL%>libs/css/bootstrap.min.css">
|
||||
<link rel="stylesheet" href="<%-originalURL%>libs/css/login.css">
|
||||
<link rel="stylesheet" href="<%-originalURL%>libs/css/material.min.css">
|
||||
<link rel="stylesheet" href="<%-originalURL%>libs/css/material.style.css">
|
||||
<meta name="mobile-web-app-capable" content="yes">
|
||||
<link rel="icon" href="libs/img/icon/favicon.ico" type="image/x-icon" />
|
||||
<link rel="shortcut icon" href="libs/img/icon/favicon.ico" type="image/x-icon" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black">
|
||||
<meta name="apple-mobile-web-app-title" content="Shinobi">
|
||||
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
|
||||
<link rel="apple-touch-icon" sizes="57x57" href="libs/img/icon/apple-touch-icon-57x57.png" />
|
||||
<link rel="apple-touch-icon" sizes="72x72" href="libs/img/icon/apple-touch-icon-72x72.png" />
|
||||
<link rel="apple-touch-icon" sizes="76x76" href="libs/img/icon/apple-touch-icon-76x76.png" />
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="libs/img/icon/apple-touch-icon-114x114.png" />
|
||||
<link rel="apple-touch-icon" sizes="120x120" href="libs/img/icon/apple-touch-icon-120x120.png" />
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="libs/img/icon/apple-touch-icon-144x144.png" />
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="libs/img/icon/apple-touch-icon-152x152.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="libs/img/icon/apple-touch-icon-180x180.png" />
|
||||
<script src="libs/js/jquery.min.js"></script>
|
||||
<script src="libs/js/jquery-ui.min.js"></script>
|
||||
<script src="libs/js/jquery.serialize.js"></script>
|
||||
<link rel="icon" href="<%-originalURL%>libs/img/icon/favicon.ico" type="image/x-icon" />
|
||||
<link rel="shortcut icon" href="<%-originalURL%>libs/img/icon/favicon.ico" type="image/x-icon" />
|
||||
<% include header-favicon.ejs %>
|
||||
<script src="<%-originalURL%>libs/js/jquery.min.js"></script>
|
||||
<script src="<%-originalURL%>libs/js/jquery-ui.min.js"></script>
|
||||
<script src="<%-originalURL%>libs/js/jquery.serialize.js"></script>
|
||||
</head>
|
||||
<% cleanLang=function(string){
|
||||
<% cleanLang = function(string){
|
||||
if(!string){string=''}
|
||||
return string.replace(/'/g,"\\'")
|
||||
} %>
|
||||
}%>
|
|
@ -10,7 +10,7 @@
|
|||
<h4 class="modal-title" id="help_windowLabel"><i class="fa fa-question-circle"></i> <span><%-lang.Help%></span></h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<a href="http://shinobi.video/docs/donate"><img src="libs/img/icon/apple-touch-icon-152x152.png" class="pull-right" style="border-radius:50%;margin-left:20px;border: 1px solid #c3996b;"></a>
|
||||
<a href="http://shinobi.video/docs/donate"><img src="<%-originalURL%>libs/img/icon/apple-touch-icon-152x152.png" class="pull-right" style="border-radius:50%;margin-left:20px;border: 1px solid #c3996b;"></a>
|
||||
<p>For information about how to use Shinobi you can check out the <a target="_blank" href="http://shinobi.video/docs">Docs</a>.</p>
|
||||
<p>If you would like to get professional support please consider ordering a <a href="http://shinobi.video/support">support package</a>. You can find <b>Moe Alam, The Author</b>, on the <a target="_blank" href="https://discord.gg/ehRd8Zz">Discord</a> Community Chat. For general questions and community support you can also try <a href="https://www.reddit.com/r/ShinobiCCTV">Reddit</a>.</p>
|
||||
<p><strong>Support </strong> <a href="http://shinobi.video/support">from @moeiscool</a></p>
|
||||
|
|
|
@ -8,28 +8,42 @@
|
|||
</button>
|
||||
<h4 class="modal-title" id="logsLabel"><i class="fa fa-exclamation-triangle"></i> <%-lang.Logs%></h4>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<div class="form-group">
|
||||
<label>
|
||||
<div>
|
||||
<select class="form-control" id="log_monitors">
|
||||
<option class="hard" value="all"><%-lang['All Logs']%></option>
|
||||
<option class="hard" value="$USER"><%-lang['For Group']%></option>
|
||||
</select>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>
|
||||
<input class="form-control search-controller" placeholder="<%-lang.Search%>">
|
||||
</label>
|
||||
</div>
|
||||
<table class="table table-striped">
|
||||
<tbody class="search-body"></tbody>
|
||||
</table>
|
||||
<div class="modal-body overflow-hidden">
|
||||
<div class="col-md-3">
|
||||
<div class="form-group">
|
||||
<label>
|
||||
<div>
|
||||
<select class="form-control" id="log_monitors">
|
||||
<option class="hard" value="all"><%-lang['All Logs']%></option>
|
||||
<option class="hard" value="$USER"><%-lang['For Group']%></option>
|
||||
</select>
|
||||
</div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang.Search%></span></div>
|
||||
<div><input type="text" class="form-control search-controller" placeholder="<%-lang.Search%>" /></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Date Range']%></span></div>
|
||||
<div><input type="text" id="logs_daterange" class="form-control" value="" /></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<div class="fixed-table-container">
|
||||
<div class="fixed-table-body">
|
||||
<table class="table table-striped">
|
||||
<tbody class="search-body"></tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default pull-left" data-dismiss="modal"><i class="fa fa-times"></i> <%-lang.Close%></button>
|
||||
<button download class="btn btn-info"><%-lang.Export%></button>
|
||||
<button onclick="$.log.lm.change()" class="btn btn-success"><%-lang.Check%></button>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,19 +1,12 @@
|
|||
<!--Confirmation Window-->
|
||||
<div class="modal fade" id="add_edit" tabindex="-1" role="dialog" aria-labelledby="permissionsLabel" aria-hidden="true">
|
||||
<div class="modal fade full" id="add_edit" tabindex="-1" role="dialog" aria-labelledby="permissionsLabel" aria-hidden="true">
|
||||
<div class="modal-dialog" role="document">
|
||||
<form class="modal-content">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
<h4 class="modal-title" id="permissionsLabel"><i class="fa fa-lock"></i> <span id="title"></span>
|
||||
<div class="pull-right">
|
||||
<label class="mdl-switch mdl-js-switch mdl-js-ripple-effect" for="edit">
|
||||
<input type="checkbox" id="edit" value="1" class="mdl-switch__input">
|
||||
<span class="monospace mdl-switch__label"></span>
|
||||
</label>
|
||||
</div>
|
||||
</h4>
|
||||
<h4 class="modal-title" id="permissionsLabel"><i class="fa fa-lock"></i> <span id="title"></span></h4>
|
||||
</div>
|
||||
<div class="modal-body" style="max-height:600px;overflow:auto">
|
||||
<div class="form-group">
|
||||
|
@ -118,6 +111,14 @@
|
|||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_l_input h_l_limited">
|
||||
<label><div><span><%-lang['Can use Amazon S3']%></span></div>
|
||||
<div><select class="form-control" detail="use_aws_s3">
|
||||
<option value="1" selected><%-lang.Yes%></option>
|
||||
<option value="0"><%-lang.No%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_l_input h_l_limited">
|
||||
<label><div><span><%-lang['Can use WebDAV']%></span></div>
|
||||
<div><select class="form-control" detail="use_webdav">
|
||||
|
@ -126,6 +127,14 @@
|
|||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_l_input h_l_limited">
|
||||
<label><div><span><%-lang['Can use Discord Bot']%></span></div>
|
||||
<div><select class="form-control" detail="use_discordbot">
|
||||
<option value="1" selected><%-lang.Yes%></option>
|
||||
<option value="0"><%-lang.No%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_l_input h_l_limited">
|
||||
<label><div><span><%-lang['Can use LDAP']%></span></div>
|
||||
<div><select class="form-control" detail="use_ldap">
|
||||
|
@ -137,6 +146,12 @@
|
|||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-default pull-left" data-dismiss="modal"><i class="fa fa-times"></i> <%-lang.Close%></button>
|
||||
|
||||
<div class="pull-left">
|
||||
<div class="marc-toggle display-inline">
|
||||
<input type="checkbox" id="edit"/><label for="edit">Add or Edit</label>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" class="btn btn-success"><i class="fa fa-check"></i> <%-lang.Save%></button>
|
||||
</div>
|
||||
<input type="hidden" name="details" value="{}">
|
||||
|
@ -146,11 +161,12 @@
|
|||
<script>
|
||||
//add new
|
||||
$.aN={e:$('#add_edit')};$.aN.f=$.aN.e.find('form')
|
||||
$.aN.modeIsEdit = false
|
||||
$.aN.f.submit(function(e){
|
||||
e.preventDefault();
|
||||
e.s=$.aN.f.serializeObject()
|
||||
e.cx={f:'accounts',ff:'register',form:e.s};
|
||||
if($('#edit').is(':checked')){
|
||||
if($.aN.modeIsEdit){
|
||||
e.cx.ff='edit';
|
||||
e.cx.account=$.aN.selected;
|
||||
}
|
||||
|
@ -158,21 +174,33 @@ $.aN.f.submit(function(e){
|
|||
$.aN.e.modal('hide')
|
||||
return false;
|
||||
});
|
||||
$.aN.e.on('change','[detail]',function(e){
|
||||
e.ar={},e.f=$(this).parents('form');
|
||||
$.each(e.f.find('[detail]'),function(n,v){
|
||||
v=$(v);e.ar[v.attr('detail')]=v.val();
|
||||
$.aN.e.on('change','[detail]',function(){
|
||||
e = {}
|
||||
e.ar = {}
|
||||
if($.aN.modeIsEdit){
|
||||
try{
|
||||
e.ar = Object.assign(JSON.parse($.aN.selected.details),{})
|
||||
}catch(err){
|
||||
|
||||
}
|
||||
}
|
||||
$.each($.aN.e.find('[detail]'),function(n,v){
|
||||
var el = $(v)
|
||||
e.ar[el.attr('detail')] = el.val()
|
||||
});
|
||||
e.f.find('[name="details"]').val(JSON.stringify(e.ar));
|
||||
$.aN.e.find('[name="details"]').val(JSON.stringify(e.ar))
|
||||
})
|
||||
$('#edit').change(function(e){
|
||||
if($('#edit').is(':checked')){
|
||||
$.aN.modeIsEdit = true
|
||||
$('#title').text("<%-lang['Edit']%>")
|
||||
$.aN.e.find('[name="mail"],[name="ke"]').prop('disabled',true)
|
||||
}else{
|
||||
$.aN.modeIsEdit = false
|
||||
$('#title').text("<%-lang['Add New']%>")
|
||||
$.aN.e.find('input,select').prop('disabled',false)
|
||||
}
|
||||
$.aN.e.find('[detail]').first().change()
|
||||
}).change()
|
||||
$.aN.e.on('change','[selector]',function(e){
|
||||
e.v=$(this).val();e.a=$(this).attr('selector')
|
||||
|
@ -182,6 +210,7 @@ $.aN.e.on('change','[selector]',function(e){
|
|||
//simple lister
|
||||
$.aC={e:$('#accounts')};$.aC.t=$.aC.e.find('table')
|
||||
$.aC.e.on('click','.add',function(e){
|
||||
$.aN.selected = null
|
||||
$.aN.e.modal('show')
|
||||
$('#edit').prop('checked',false).change().parent().removeClass('is-checked')
|
||||
$.aN.f[0].reset()
|
||||
|
@ -200,7 +229,6 @@ $.aC.e.on('click','.delete',function(e){
|
|||
})
|
||||
$.aC.e.on('click','.permission',function(e){
|
||||
$.aN.e.modal('show')
|
||||
$('#edit').prop('checked',true).change().parent().addClass('is-checked')
|
||||
e.e=$(this).parents('tr');
|
||||
e.u=e.e.attr('ke');
|
||||
e.account=$.ccio.accounts[e.u];
|
||||
|
@ -211,8 +239,9 @@ $.aC.e.on('click','.permission',function(e){
|
|||
$.aN.e.find('[name="'+n+'"]').val(v).change()
|
||||
})
|
||||
$.each(JSON.parse(e.account.details),function(n,v){
|
||||
$.aN.e.find('[detail="'+n+'"]').val(v).change()
|
||||
$.aN.e.find('[detail="'+n+'"]').val(v)
|
||||
})
|
||||
$('#edit').prop('checked',true).change().parent().addClass('is-checked')
|
||||
// $.pR.e.modal('show');
|
||||
|
||||
})
|
||||
|
|
|
@ -46,11 +46,6 @@
|
|||
<div><input class="form-control" name="name"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Retry Connection']%></span></div>
|
||||
<div><input class="form-control" detail="fatal_max" placeholder="10"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang["Number of Days to keep"]%> <%-lang["Videos"]%></span></div>
|
||||
<div><input class="form-control" detail="max_keep_days" placeholder="Default is global value"></div>
|
||||
|
@ -95,20 +90,22 @@
|
|||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Automatic']%></span></div>
|
||||
<div><select class="form-control" detail="auto_host_enable" selector="h_auto_host">
|
||||
<option value="0"><%-lang.No%></option>
|
||||
<option value="1" selected><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_auto_host_input h_auto_host_1">
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Full URL Path']%></span></div>
|
||||
<div><input class="form-control" detail="auto_host" placeholder="Example : rtsp://123.123.123.123/stream/1"></div>
|
||||
<div class="h_t_input h_t_h264 h_t_hls h_t_mp4 h_t_jpeg h_t_mjpeg h_t_local">
|
||||
<div class="form-group h_t_input h_t_h264 h_t_hls h_t_mp4 h_t_jpeg h_t_mjpeg">
|
||||
<label><div><span><%-lang['Automatic']%></span></div>
|
||||
<div><select class="form-control" detail="auto_host_enable" selector="h_auto_host">
|
||||
<option value="0"><%-lang.No%></option>
|
||||
<option value="1" selected><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_auto_host_input h_auto_host_1">
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Full URL Path']%></span></div>
|
||||
<div><input class="form-control" detail="auto_host" placeholder="Example : rtsp://123.123.123.123/stream/1"></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="h_auto_host_input h_auto_host_0 auto_host_fill" style="display:none">
|
||||
<div class="form-group h_t_input h_t_h264 h_t_hls h_t_mp4 h_t_jpeg h_t_mjpeg">
|
||||
|
@ -183,6 +180,19 @@
|
|||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['ONVIF']%></span></div>
|
||||
<div><select class="form-control" detail="is_onvif" selector="h_onvif">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_onvif_input h_onvif_1">
|
||||
<label><div><span><%-lang['ONVIF Port']%></span></div>
|
||||
<div><input class="form-control" detail="onvif_port" placeholder="8000" type="number"></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<!-- END of Connection -->
|
||||
<!-- START of Input -->
|
||||
|
@ -279,7 +289,7 @@
|
|||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Stream Type']%></span></div>
|
||||
<div><select class="form-control" detail="stream_type" selector="h_st" triggerChange="#add_monitor [detail=stream_vcodec]" triggerChangeIgnore="b64">
|
||||
<div><select class="form-control" detail="stream_type" selector="h_st" triggerChange="#add_monitor [detail=stream_vcodec]" triggerChangeIgnore="b64,mjpeg">
|
||||
<option value="mp4"><%-lang['Poseidon']%></option>
|
||||
<!-- <option value="pam">PAM</option>-->
|
||||
<option value="b64" selected><%-lang['Base64 over Websocket']%></option>
|
||||
|
@ -431,7 +441,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="h_us_input h_us_advanced" style="display:none">
|
||||
<div class="h_us_input h_us_advanced h_hls_v_input h_hls_v_libx264 h_hls_v_libx265 h_hls_v_h264_nvenc h_hls_v_hevc_nvenc h_hls_v_no" style="display:none">
|
||||
<div class="form-group-group navy" section id="monSectionStreamTimestamp">
|
||||
<h4><%-lang['Stream Timestamp']%></h4>
|
||||
<div class="form-group">
|
||||
|
@ -958,20 +968,47 @@
|
|||
<div><input class="form-control" detail="detector_command_timeout" placeholder="10"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group col-md-12">
|
||||
<label><div><span><%-lang['Email on Trigger']%></span></div>
|
||||
<div><select class="form-control" detail="detector_mail">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group col-md-12">
|
||||
<label><div><span><%-lang['Allow Next Email']%></span></div>
|
||||
<div><input class="form-control" detail="detector_mail_timeout" placeholder="10"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Email on Trigger']%></span></div>
|
||||
<div><select class="form-control" detail="detector_mail" selector="h_det_email">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_det_email_input h_det_email_1">
|
||||
<label><div><span><%-lang['Attach Video Clip']%></span></div>
|
||||
<div><select class="form-control" detail="detector_mail_send_video">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_det_email_input h_det_email_1">
|
||||
<label><div><span><%-lang['Allow Next Email']%></span></div>
|
||||
<div><input class="form-control" detail="detector_mail_timeout" placeholder="10"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Discord Alert on Trigger']%></span></div>
|
||||
<div><select class="form-control" detail="detector_discordbot" selector="h_det_discord">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_det_discord_input h_det_discord_1">
|
||||
<label><div><span><%-lang['Attach Video Clip']%></span></div>
|
||||
<div><select class="form-control" detail="detector_discordbot_send_video">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group h_det_discord_input h_det_discord_1">
|
||||
<label><div><span><%-lang['Allow Next Discord Alert']%></span></div>
|
||||
<div><input class="form-control" detail="detector_discordbot_timeout" placeholder="10"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="hidden">
|
||||
<div><input detail="cords" placeholder=""></div>
|
||||
|
@ -1313,30 +1350,6 @@
|
|||
<input type="hidden" detail="groups">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group-group green" section id="monSectionLogging">
|
||||
<h4><%-lang['Logging']%></h4>
|
||||
<div class="row">
|
||||
<div class="form-group col-md-12">
|
||||
<label><div><span><%-lang['Log Level']%></span></div>
|
||||
<div><select class="form-control" detail="loglevel">
|
||||
<option value="quiet"><%-lang['Silent']%></option>
|
||||
<option value="fatal"><%-lang['Fatal']%></option>
|
||||
<option value="error" selected><%-lang['on Error']%></option>
|
||||
<option value="warning"><%-lang['All Warnings']%></option>
|
||||
<option value="debug"><%-lang['Debug']%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group col-md-12">
|
||||
<label><div><span><%-lang['Save Log in SQL']%></span></div>
|
||||
<div><select class="form-control" detail="sqllog">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group-group orange" section id="monSectionCopying">
|
||||
<h4><%-lang['Copy Settings']%></h4>
|
||||
<div class="form-group">
|
||||
|
@ -1440,6 +1453,32 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group-group green" section id="monSectionLogging">
|
||||
<h4><%-lang['Logging']%></h4>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Log Level']%></span></div>
|
||||
<div><select class="form-control" detail="loglevel">
|
||||
<option value="quiet"><%-lang['Silent']%></option>
|
||||
<option value="fatal"><%-lang['Fatal']%></option>
|
||||
<option value="error" selected><%-lang['on Error']%></option>
|
||||
<option value="warning"><%-lang['All Warnings']%></option>
|
||||
<option value="debug"><%-lang['Debug']%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Save Log in SQL']%></span></div>
|
||||
<div><select class="form-control" detail="sqllog">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group-group green">
|
||||
<h4><%-lang['Log Stream']%></h4>
|
||||
<div class="data-menu logs"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group" style="display:none">
|
||||
<input type="hidden" detail="detector_cascades">
|
||||
|
|
|
@ -179,6 +179,98 @@
|
|||
</div>
|
||||
</div>
|
||||
<% } %>
|
||||
<% if(details.use_aws_s3!=='0'){ %>
|
||||
<div class="form-group-group forestgreen">
|
||||
<h4><%-lang['Amazon S3']%></h4>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang.Bucket%></span></div>
|
||||
<div><input class="form-control" detail="aws_s3_bucket" placeholder="Example : slippery-seal"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="form-group col-md-12">
|
||||
<label><div><span><%-lang.aws_accessKeyId%></span></div>
|
||||
<div><input class="form-control" detail="aws_accessKeyId"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group col-md-12">
|
||||
<label><div><span><%-lang.aws_secretAccessKey%></span></div>
|
||||
<div><input class="form-control" type="password" detail="aws_secretAccessKey"></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang.Region%></span></div>
|
||||
<div><select class="form-control" detail="aws_region">
|
||||
<option value="us-west-1" selected>US West (N. California)</option>
|
||||
<option value="us-west-2">US West (Oregon)</option>
|
||||
<option value="us-east-2">US East (Ohio)</option>
|
||||
<option value="us-east-1">US East (N. Virginia)</option>
|
||||
<option value="ap-south-1">Asia Pacific (Mumbai)</option>
|
||||
<option value="ap-northeast-2">Asia Pacific (Seoul)</option>
|
||||
<option value="ap-northeast-3">Asia Pacific (Osaka-Local)**</option>
|
||||
<option value="ap-southeast-1">Asia Pacific (Singapore)</option>
|
||||
<option value="ap-southeast-2">Asia Pacific (Sydney)</option>
|
||||
<option value="ap-northeast-1">Asia Pacific (Tokyo)</option>
|
||||
<option value="ca-central-1">Canada (Central)</option>
|
||||
<option value="cn-north-1">China (Beijing)</option>
|
||||
<option value="cn-northwest-1">China (Ningxia)</option>
|
||||
<option value="eu-central-1">EU (Frankfurt)</option>
|
||||
<option value="eu-west-1">EU (Ireland)</option>
|
||||
<option value="eu-west-2">EU (London)</option>
|
||||
<option value="eu-west-3">EU (Paris)</option>
|
||||
<option value="sa-east-1">South America (São Paulo)</option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang.Autosave%></span></div>
|
||||
<div><select class="form-control" detail="aws_s3_save">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Save Links to Database']%></span></div>
|
||||
<div><select class="form-control" detail="aws_s3_log">
|
||||
<option value="0"><%-lang.No%></option>
|
||||
<option value="1" selected><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Save Directory']%></span></div>
|
||||
<div><input class="form-control" placeholder="" detail="aws_s3_dir"></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<% } %>
|
||||
<% if(details.use_discordbot!=='0'){ %>
|
||||
<div class="form-group-group forestgreen">
|
||||
<h4><%-lang['Discord Bot']%></h4>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang.Enabled%></span></div>
|
||||
<div><select class="form-control" detail="discordbot" selector="u_discord_bot">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="u_discord_bot_input u_discord_bot_1">
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang.Token%></span></div>
|
||||
<div><input type="password" class="form-control" placeholder="XXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXX_XXXXXXXXXXXXXXXXXX" detail="discordbot_token"></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Channel ID']%></span></div>
|
||||
<div><input class="form-control" placeholder="xxxxxxxxxxxxxxxxxx" detail="discordbot_channel"></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% } %>
|
||||
<% if(details.use_ldap!=='0'){ %>
|
||||
<div class="form-group-group forestgreen">
|
||||
<h4><%-lang.LDAP%></h4>
|
||||
|
|
|
@ -10,15 +10,42 @@
|
|||
</div>
|
||||
<div class="modal-body" style="max-height:600px;overflow:auto">
|
||||
<div class="text-center msg"></div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['All Monitors and Privileges']%></span></div>
|
||||
<div><select class="form-control" detail="allmonitors">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
<div class="form-group-group">
|
||||
<h4><%-lang['Privileges']%></h4>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['All Monitors and Privileges']%></span></div>
|
||||
<div><select class="form-control" detail="allmonitors">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group permission-view">
|
||||
<label><div><span><%-lang['Can Create and Delete Monitors']%></span></div>
|
||||
<div><select class="form-control" detail="monitor_create">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group permission-view">
|
||||
<label><div><span><%-lang['Can Change User Settings']%></span></div>
|
||||
<div><select class="form-control" detail="user_change">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Can View Logs']%></span></div>
|
||||
<div><select class="form-control" detail="view_logs">
|
||||
<option value="0" selected><%-lang.No%></option>
|
||||
<option value="1"><%-lang.Yes%></option>
|
||||
</select></div>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group-group blue" id="monitors_section">
|
||||
<div class="form-group-group blue permission-view" id="monitors_section">
|
||||
<h4>
|
||||
<%-lang['Can View Monitor']%>
|
||||
<div class="pull-right">
|
||||
|
@ -37,7 +64,7 @@
|
|||
</div>
|
||||
<% }) %>
|
||||
</div>
|
||||
<div class="form-group-group forestgreen" id="monitors_edit_section">
|
||||
<div class="form-group-group forestgreen permission-view" id="monitors_edit_section">
|
||||
<h4>
|
||||
<%-lang['Can Edit Monitor']%>
|
||||
<div class="pull-right">
|
||||
|
@ -56,7 +83,7 @@
|
|||
</div>
|
||||
<% }) %>
|
||||
</div>
|
||||
<div class="form-group-group navy" id="video_view_section">
|
||||
<div class="form-group-group navy permission-view" id="video_view_section">
|
||||
<h4>
|
||||
<%-lang['Can View Videos and Events']%>
|
||||
<div class="pull-right">
|
||||
|
@ -75,7 +102,7 @@
|
|||
</div>
|
||||
<% }) %>
|
||||
</div>
|
||||
<div class="form-group-group red" id="video_delete_section">
|
||||
<div class="form-group-group red permission-view" id="video_delete_section">
|
||||
<h4>
|
||||
<%-lang['Can Delete Videos and Events']%>
|
||||
<div class="pull-right">
|
||||
|
|
|
@ -8,10 +8,9 @@
|
|||
</button>
|
||||
<h4 class="modal-title" id="videos_viewerLabel"><i class="fa fa-film"></i> <%-lang.Videos%> <small> <span class="video_viewer_total"></span> <%-lang.total%></small></h4>
|
||||
</div>
|
||||
<div class="modal-body flex-container-modal-body">
|
||||
<div style="padding:20px 0" class="flex-block flex-modal-block">
|
||||
<div class="modal-body overflow-hidden">
|
||||
<div style="padding:20px 0">
|
||||
<div class="col-md-3">
|
||||
|
||||
<div class="form-group">
|
||||
<label><div><span><%-lang['Date Range']%></span></div>
|
||||
<div><input type="text" id="videos_viewer_daterange" class="form-control" value="" /></div>
|
||||
|
@ -32,7 +31,8 @@
|
|||
<div class="modal-footer">
|
||||
<div class="row">
|
||||
<div class="col-md-4 text-left">
|
||||
<a class="btn btn-danger delete_selected"><i class="fa fa-trash-o"></i> <%-lang['Delete selected']%></a>
|
||||
<a class="btn btn-danger delete_selected"><i class="fa fa-trash-o"></i> <%-lang['Delete']%></a>
|
||||
<a class="btn btn-default export_selected"><i class="fa fa-folder-o"></i> <%-lang['Zip and Download']%></a>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<div class="text-center" id="videos_viewer_pages"></div>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue