| Server IP : 188.114.97.2 / Your IP : 104.23.243.201 Web Server : Apache/2.4.59 (Debian) System : Linux EDL-STRETCH 4.19.0-27-amd64 #1 SMP Debian 4.19.316-1 (2024-06-25) x86_64 User : edlftp ( 1002) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /home/nicolasj/www/sms.formationlangues.be/application/views/backend/admin/ |
Upload File : |
<?php
/*********************
*********************
Aernout Guillaume
http://codes.solutions
*********************
*********************/
?>
<hr />
<div class="row">
<div class="col-md-12">
<!------CONTROL TABS START------>
<ul class="nav nav-tabs bordered">
<li id="tabParam" class="active">
<a href="#param" data-toggle="tab"><i class="entypo-cog"></i>
<?php echo get_phrase('users');?>
</a>
</li>
<!-- <li id="tabNotification">
<a href="#notification" data-toggle="tab"><i class="entypo-bell"></i>
<?php echo get_phrase('notification');?>
</a>
</li>-->
</ul>
<!------CONTROL TABS END------>
<div class="tab-content">
<br>
<!----TABLE PARAM STARTS-->
<div class="tab-pane box active" id="param" style=" overflow-x: scroll;">
<div class="row col-sm-12" id="row-1">
<br>
<div class="form-group">
<div class="padded">
<div class="col-sm-12">
<div class="form-group">
<label class="col-sm-1 control-label"><?php echo get_phrase('add user');?></label>
<div class='col-sm-3'>
<input type='email' id="login-mail" class="input form-control" placeholder="[email protected]" />
</div>
<div class='col-sm-3'>
<input type='email' id="notif-mail" class="input form-control" placeholder="[email protected]" />
</div>
<div class='col-sm-3'>
<select name="user-role" id="user-role" class="form-control">
<? foreach ($this->crud_model->get_role() as $key => $role) {
echo "<option value='".$role['role_id']."'>".$role['code']."</option>";
}?>
</select>
</div>
<div class='col-sm-3'>
<input type='text' id="fn" class="input form-control" placeholder="First name" />
</div>
<div class='col-sm-3'>
<input type='text' id="sn" class="input form-control" placeholder="Last name" />
</div>
<div class='col-sm-1'>
<span class="btn btn-info" id="add-user">Add +</span>
</div>
</div>
</div>
<br><br>
<div class="col-sm-12">
<br><br>
<table class="table-bordered datatable" id="user-table">
<thead>
<tr><th>ID</th><th>user</th><th>login mail</th><th>notification mail</th><th></th><th>role</th><th>#</th><th>Last Connection</th></tr>
</thead>
<tbody id="mail-table-body">
<? //var_dump($email_list); ?>
<? foreach ($user_list as $key => $user) {
$address = $this->crud_model->guess_user_address($user['user_id']);
//$address = $this->crud_model->get_user_address();
echo "<tr><td>".$user['user_id']."</td><td>".$user['first_name']." ".$user['last_name']."</td><td><input class='btn btn-default btn-email' data-id='".$user['user_id']."' value='".$user['email']."'/></td><td><input class='btn btn-default btn-email-notif' data-id='".$user['user_id']."' value='".$user['email_notification']."'/></td><td>".$address['line_1']." - ".$address['postcode']."</td><td><span class='btn btn-info' data-role='".$user['role_id']."' data-id='".$user['user_id']."' onclick='switch_user(this)'>".$this->crud_model->get_user_role($user['role_id'])."<span></td><td><span class='btn btn-danger btn-remove' id='".$user['user_id']."'>remove</span></td><td>".$user['last_connection']."</td></tr>";
}?>
<!-- <tr></tr> -->
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
<!----TABLE PARAM ENDS--->
<?php require_once(APPPATH."/views/backend/admin/admin_users/notifications.php");?>
</div>
<!-- assets to move -->
<link href="https://gitcdn.github.io/bootstrap-toggle/2.2.2/css/bootstrap-toggle.min.css" rel="stylesheet">
<script src="https://gitcdn.github.io/bootstrap-toggle/2.2.2/js/bootstrap-toggle.min.js"></script>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap-select.min.css">
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap-select.min.js"></script>
<!-- Initialize the script -->
<script>
jQuery(document).ready(function($)
{
var table = $("#user-table").DataTable( {
"pageLength": 25
});
var table2 = $("#rules-table").DataTable( {
"pageLength": 25
});
const table_search_input = table.table().container().querySelector('.dt-search input');
if (table_search_input) { table_search_input.focus(); }
$('select.form-select').select2();
$('#add-user').click(function(){
var loginmail = $('#login-mail').val();
var notificationmail = $('#notif-mail').val();
var role = $('#user-role :selected').val();
var fn = $('#fn').val();
var sn = $('#sn').val();
$.post('/Admin_Users/push_user',{
role : role,
email : loginmail,
email2 : notificationmail,
firstname : fn,
name : sn
},function(data){
console.log(data);
obj = $.parseJSON(data);
var data_row = new Array(
obj.id,
obj.user,
'<input class=\'btn btn-default btn-email\' data-id=\''+obj.id+'\' value=\''+obj.email1+'\'/>',
'<input class=\'btn btn-default btn-email-notif\' data-id=\''+obj.id+'\' value=\''+obj.email2+'\'/>',
'<span class=\'btn btn-info\' data-role=\''+obj.role_id+'\' data-id=\''+obj.id+'\'onclick=\'switch_user(this)\'>'+obj.role+'</span>',
"<span class='btn btn-danger btn-remove' id='"+obj.id+"'>remove</span>"
);
table.row.add(data_row);
table.draw();
});
});
$('#add-rules').click(function(){
const checkBox = function(i){
if($(i).is(":checked")){return $(i).attr('data-on');}
else{return $(i).attr('data-off');}
};
var rule = $('#notification-type :selected').val();
var way = checkBox('#notification-way');
var range_d = $("#notification-range :selected").val();
var range_h = $("#notification-range-h :selected").val();
var email = $("#notification-sender :selected").val();
var email_type = function(){if(checkBox('#notifcation-mail') == "notification email"){return "notification";}else{return "main";}};
var target = $('#notification-target').val();
console.log(target);
$.post('/Admin_Users/push_rule',{
rule : rule,
way : way,
range_d : range_d,
range_h : range_h,
email : email,
email_type : email_type,
target : target,
},function(data){
console.log(data);
obj = $.parseJSON(data);
if(target == "#"){
$.each(obj,function(i,subObj){
var data_row = new Array(
subObj.id,
'<span class="btn btn-default">'+subObj.Rule_type+'</span>',
subObj.Rule_way,
subObj.Range_d+"Day "+subObj.Range_h+"H",
'<span class=\'btn btn-info\'>'+subObj.Rule_sender+'</span>',
'<span class=\'btn btn-info\'>'+subObj.Rule_mail_type+'</span>',
'<span class=\'btn btn-info\'>'+subObj.Rule_target+'</span>',
"<span class='btn btn-danger btn-remove' id='"+subObj.id+"'>remove</span>"
);
table2.row.add(data_row);
table2.draw();
});
}else{
var data_row = new Array(
obj.id,
'<span class="btn btn-default">'+obj.Rule_type+'</span>',
obj.Rule_way,
obj.Range_d+"Day "+obj.Range_h+"H",
'<span class=\'btn btn-info\'>'+obj.Rule_sender+'</span>',
'<span class=\'btn btn-info\'>'+obj.Rule_mail_type+'</span>',
'<span class=\'btn btn-info\'>'+obj.Rule_target+'</span>',
"<span class='btn btn-danger btn-remove' id='"+obj.id+"'>remove</span>"
);
table2.row.add(data_row);
table2.draw();
}
});
});
$('#user-table').on('click','.btn-remove', function(){
//console.log($(this).closest('tr'));
$('#user-table').DataTable().row($(this).closest('tr')).remove().draw();
var id = $(this).attr('id');
console.log(id);
$.post('Admin_Users/pull_user',{
id : id
},function(data){
console.log(data);
});
});
$('#rules-table').on('click','.btn-remove', function(){
//console.log($(this).closest('tr'));
$('#rules-table').DataTable().row($(this).closest('tr')).remove().draw();
var id = $(this).attr('id');
console.log(id);
$.post('Admin_Users/pull_rule',{
id : id
},function(data){
console.log(data);
});
});
$('#user-table').on('change','.btn-email', function(){
var id = $(this).attr('data-id');
var email = $(this).val();
//console.log(id + ">"+email);
$.post('Admin_Users/update_user',{
id : id,
element : 'email',
element_data : email
},function(data){
console.log(data);
});
});
$('#user-table').on('change','.btn-email-notif', function(){
var id = $(this).attr('data-id');
var email = $(this).val();
//console.log(id + ">"+email);
$.post('Admin_Users/update_user',{
id : id,
element : 'email_notification',
element_data : email
},function(data){
console.log(data);
});
});
});
function switch_user(e){
var id = $(e).attr('data-id');
var role = $(e).attr('data-role');
$.post('Admin_Users/switch_user',{
id : id,
role : role,
},function(data){
console.log(data);
obj = $.parseJSON(data);
$(e).attr('data-role',obj.role_id);
$(e).text(obj.role);
});
}
</script>