
@{section header}
<!-- <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/cropperjs/1.5.9/cropper.min.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/cropperjs/1.5.9/cropper.min.js"></script> -->

<title>لیست کاربران</title>

@{end}




<div class="Hrow">
	<div class="Hcontainer Hcontainer-1200 Hpadd-2per">
    <a class="Hfloat-L Hbtn-auto Hbtn-yellow2" href="/user/insert">ثبت کاربر</a>
    <form id="frm" class="Hrow HmarB-3per" name="frm" action="" method="post" enctype="multipart/form-data" >
      
      <div class="Hcol-xlg-6 Hcol-lg-6 Hcol-xmd-6 Hcol-md-6 Hcol-xsm-6 Hcol-sm-6 Hcol-xs-12 Hcol-xss-12 Hpadd-2per">
        <select name="query" id="query" class="Htxt-V1">
          <option value="fam">نام خانوادگی</option>
          <option value="phone">شماره تلفن</option>
          <option value="idcode">کد ملی</option>
          <option value="username">نام کاربری</option>
        </select>
        
      </div> 
      <div class="Hcol-xlg-6 Hcol-lg-6 Hcol-xmd-6 Hcol-md-6 Hcol-xsm-6 Hcol-sm-6 Hcol-xs-12 Hcol-xss-12 Hpadd-2per">
        <input type="text" class="Htxt-V1" id="userSearch" name="text" placeholder=""/>
      </div>  
      <div class="Hrow SubmitionBox Hpadd-2per">
        <input class="trans0_25 Hbtn-auto Hbtn-yellow2"  type="button" id="filterUsers" data-action="/user/list/filter"  value="جستجو کاربر"/>
        <a href="" id="filter-remove" class="HmarT-10 Hbtn-mini Hbg-digired" data-color="#fff"  style="padding:5px 15px;display:none;">حذف فیلتر</a>
      </div>
    </form>
    <div id="list" class="listShow-N2">
      @{foreach m in model.data}
      <div class="Hrow Hpadd-10" id="i@{!m._id}" >
        <b style="float:right;padding-left:10px;" class="username">@{!m.username}</b> 
        <span class="nameFam">@{!m.name} @{!m.fam}</span>  
        <span class="phone" style="display:none">@{!m.phone}</span>
        <span class="email" style="display:none">@{!m.email}</span>
        <span class="idcode" style="display:none">@{!m.idcode}</span>
        <span class="Hfloat-L">
          <a href="/user/view/pictuer/@{!m._id}" class="fas fa-camera Hbtn-mini Hbg-lightgreen" data-color="#fff"></a>
          <b class="far fa-eye  user-info Hbtn-mini Hbg-skyblue"  data-color="#fff" ></b> 
          <b class="fas fa-user-lock Hbtn-mini Hbg-sharporange" data-color="#fff"  ></b> 
          <a href="/user/update/view/@{!m._id}" class="fas fa-pencil-alt Hbtn-mini Hbg-yellow"></a>
          <b data-id="@{!m._id}" class="fas fa-trash-alt remove-user Hbtn-mini Hbg-digired" data-color="#fff"></b>
        </span>
      </div>
      @{end}
   </div>
   <div class="Hrow" id="paging-user">
   @{view('~partial/pagination',model)}
   </div>
	</div>
</div>





<div class="Hmodal" id="mod1"> 
  <div class="Hmodal-lg Hcards " style="border-radius:5px;">
    <div class="Hcards_header">
      <div class="close" style="background:#ff3333;border-radius:4px;"></div>
    </div>
    <div class="Hcards-content">
      <h2 id="name"></h2>
      <p>نام کاربری : <span id="username"></span></p>
      <p>ایمیل : <span id="email"></span></p>
      <p> کد ملی : <span id="idcode"></span></p>
      <p> شماره تماس : <span id="phone"></span></p>
      
    </div>
    <div class="Hcards-footer">
      <a href="">ویرایش این کاربر</a>
    </div>
  </div>
</div>

<button id="md1" data-selector="#mod1" data-target="Hmodal" style="display: none;"></button>

<button id="md2" data-selector="#mod2" data-target="Hmodal" style="display: none;"></button>

<div class="Hmodal" id="mod2"> 
  <div class="Hmodal-sm Hcards " style="border-radius:5px;">
    <div class="Hcards-header">
      <div class="close" style="background:#ff3333;border-radius:4px;"></div>
    </div>
    <div class="Hcards-content">
      @{view('~partial/updPassword')}
    </div>
    
  </div>
</div>

@{section footer}




  <script type="text/javascript">



    function checkPaging(){
      var users=$("#list").children().length;
      var url=window.location.href;
      url=decodeURI(url);
      if(users>1){
        window.location.href=url;
      }else{
        var page=url.split('/');
        var numpage=page[page.length-1]*1;
        if(page[page.length-1]==""){numpage=page[page.length-2]*1;}   
        if(numpage==1){window.location.href=url;
        }else{
          if(page[page.length-1]==""){
            page[page.length-2]=numpage-1;
          }else{
            page[page.length-1]=numpage-1;
          }
          url=page.join("/");window.location.href=url;
          
        }
      }
    }
    

async function show_res(result){        /// for remove user
       
    switch(result.status){
        case 100:
       alert("کد ارسال اشتباه است");
      break;
     case 200:
       await Halert({status:"info",icon:"alert",Ctext:"کاربر با موفقیت حذف شد"});     
       checkPaging();

      break;
      case 202:
              alert("شما قبلا ثبت نام کرده اید");
       alert("ارسال رمز برای شماره شما");
      break;
      case 202:
      case 203: 
      alert(result.sms);
      var x=confirm('are you ok to delete user ? ');
      alert(x);
       if(x){
        alert(result.id);
        var f=result.id+"";
        mydelete(f,"/api/user/delete_force/");
       }
      break;
      case 210:
      case 211:
       alert("عدم توانایی در ثبت اطلاعات");
      break;
      case 500:
       alert("مشکل داده ها در سرور");
      break;
      case 505:
      case 506:
      case 507:
       alert("امکان ثبت اطلاعات بدلیل اشکال در مجموعه داده ها وجود ندارد");
      break;
      case 700:
       alert("ازسال ناقص اطلاعات");
      break;
    }
   }



   
function show_filteruser(result){ // for filter users
    //       //alert(JSON.stringify(result));
    // switch(result.status){
    // //     case 100:
    // //                 Hnotification({status:"warning",Ttext:"خطای ارسال داده - ",Ctext:"لطفا کادر را با مقادیر مناسب پر کنید"});

    // //   break;
    //  case 200:
    //       alert(result.data[0].name);
    //       $("#list").html("");
    //       $("#paging-user").html("");
    //       result.data.forEach(m=>{
    //         $("#list").html($("#list").html()+'<div class="Hrow Hpadd-10" id="i'+m._id+'" ><b style="float:right;padding-left:10px;">'+m.username+'</b><span>'+m.name+' '+m.fam+'</span><span style="float:left;"><a href="/panel/user/insPic/'+m._id+'" class="fas fa-camera Hbtn-mini Hbg-lightgreen" style="color:#fff"></a><b class="far fa-eye user-info Hbtn-mini Hbg-skyblue"  data-selector="#mod1" data-target="Hmodal" style="color:#fff"></b> <b class="fas fa-user-lock  Hbtn-mini Hbg-sharporange"  data-selector="#mod2" data-target="Hmodal" style="color:#fff"></b><a href="/panel/user/update/'+m._id+'" class="fas fa-pencil-alt Hbtn-mini Hbg-yellow"></a><b data-id="'+m._id+'" class="fas fa-trash-alt remove-user Hbtn-mini Hbg-digired" style="color:#fff"></b></span></div>');
    //       });
    //       $("#filter-remove").css("display","inline-block");
          
    //   break;
    // //   case 202:
    // //           alert("شما قبلا ثبت نام کرده اید");
    // //   alert("ارسال رمز برای شماره شما");
    // //   break;
    // //   case 202:
    // //   case 203:
    // //     alert(";sdkkbjfvb");
       
    // //   break;
    // //   case 210:
    // //   case 211:
    // //   alert("عدم توانایی در ثبت اطلاعات");
    // //   break;
    // //   case 500:
    // //   alert("مشکل داده ها در سرور");
    // //   break;
    // //   case 505:
    // //   case 506:
    // //   case 507:
    // //   alert("امکان ثبت اطلاعات بدلیل اشکال در مجموعه داده ها وجود ندارد");
    // //   break;
    // //   case 700:
    // //   alert("ازسال ناقص اطلاعات");
    // //   break;
    //   default:
    //               Hnotification({status:"warning",Ttext:"خطای ارسال داده - ",Ctext:result.data});

    // }
    if(result.status==200){
          $("#list").html("");
          $("#paging-user").html("");
          result.data.forEach(m=>{
            $("#list").html($("#list").html()+'<div class="Hrow Hpadd-10" id="i'+m._id+'" ><b style="float:right;padding-left:10px;">'+m.username+'</b><span>'+m.name+' '+m.fam+'</span><span style="float:left;"><a href="/panel/user/insPic/'+m._id+'" class="fas fa-camera Hbtn-mini Hbg-lightgreen" style="color:#fff"></a><b class="far fa-eye user-info Hbtn-mini Hbg-skyblue"  data-selector="#mod1" data-target="Hmodal" style="color:#fff"></b> <b class="fas fa-user-lock  Hbtn-mini Hbg-sharporange"  data-selector="#mod2" data-target="Hmodal" style="color:#fff"></b><a href="/panel/user/update/'+m._id+'" class="fas fa-pencil-alt Hbtn-mini Hbg-yellow"></a><b data-id="'+m._id+'" class="fas fa-trash-alt remove-user Hbtn-mini Hbg-digired" style="color:#fff"></b></span></div>');
          });
          $("#filter-remove").css("display","inline-block");
          
    }else{Hnotification({status:"warning",Ttext:"خطای ارسال داده - ",Ctext:result.data});}

   }








   function show_res3(result){ // for update user's password
          alert("show-res");
      
    switch(result.status){
        case 100:
       alert("کد ارسال اشتباه است");
      break;
     case 200:
          alert("user updated");
          $(".Hmodal").trigger("click");
      break;
      case 202:
              alert("شما قبلا ثبت نام کرده اید");
       alert("ارسال رمز برای شماره شما");
      break;
      case 202:
      case 203:
        alert(";sdkkbjfvb");
      break;
      case 400:
        alert(result.mess);
        break;
      case 415:
        alert(result.mess);
      break;
      case 500:
       alert("مشکل داده ها در سرور");
      break;
      case 505:
      case 506:
      case 507:
       alert("امکان ثبت اطلاعات بدلیل اشکال در مجموعه داده ها وجود ندارد");
      break;
      case 700:
       alert("ازسال ناقص اطلاعات");
      break;
    }
   }



async function mydelete(id,url){
  
        var query="id="+id;
        var resdel=await jqajax(url,query,"get","loader");
        show_res(resdel); 
}



$(document).ready(function(){
function valid(value,num){
  if(value.length<=num){
    return false;
  }
  return true;
}
function phone_check(value){
  if(value.length!=10){
    return false;
  }else{
      if(value[0]==9){
              return true;

      }else{
            return false;
      }

  }
}
function validPass(pass){
  if(pass.length>5){
    return true
  }else{
    return false
  }
}
function meliCode_check(value){
  if(value.length!=10){
    return false
  }else{
    //$(this).attr("style","color:green");
    var w=value;
    var sum=0;
   for(s in w){
            if(s<9)
            sum+=w[s]*(10-s);
    }
   sum=sum%11;
    if((sum<2 && w[9]==sum) || ((11-w[9])==sum)){
            return true;
    }
   else{
            return false;
    }
  }
}
$("#filterUsers").click(async function(){
        var formdata=new FormData(frm);
        var sel=$("#query").val();
        var item=$("#userSearch");
        var value=item.val();
        if(valid(value,1)){
          let ok=0;
          switch (sel){
            case "idcode":
            if((meliCode_check(value)) && !isNaN(value)){
              ok=1;
            }else{item.css("border-color","red");}
            break;
            case "phone":
            if((phone_check(value)) && !isNaN(value)){
              ok=1;
            }else{item.css("border-color","red");}
            break;
            case "username":
              case "fam":
                ok=1;
            break;
          }
          if(ok){
            item.css("border-color","#ccc");
            var result=await jqajax("/user/list/filter",formdata,"post","loader");
            // var result=await jqajax("/userList/filter",formdata,"post","loader");
            // alert(result);
           
            show_filteruser(result);
          }
        }else{
          item.css("border-color","red");
             Hnotification({status:"warning",Ttext:"خطای ارسال داده - ",Ctext:"لطفا کادر را با مقادیر مناسب پر کنید"});

        }
});



$("#updpass").click(async function(){
  alert("dddd");
  var newpass=$("#newpass").val();
  var newpass2=$("#newpass2").val();

  if(validPass(newpass) && validPass(newpass2)){
    if(newpass==newpass2){
      var formdata=new FormData(frmPass);
      alert("ejraaaaaaaaaaaaaaaaa");
      
      var result=await jqajax("/user/update/password",formdata,"post","loader");  
      show_res3(result);
    }else{
      alert("adam yeksan bodan password");
    }
    
  }else{
    alert("password valid nist");
  }
});

$(document).on("click", ".fa-user-lock" ,async function(){
  alert("hey");
  alert($(this).parent().parent().attr("id"));
  $("#userid").val($(this).parent().parent().attr("id").replace("i",""));
  $("#oldpass").parent().css("display","none");
  $("#md2").trigger('click');
});







$(document).on("click", "b.user-info" ,async function(){
  $("#name").html($(this).parent().siblings(".nameFam").html());
  $("#username").html($(this).parent().siblings(".username").html());
  $("#email").html($(this).parent().siblings(".email").html());
  $("#idcode").html($(this).parent().siblings(".idcode").html());
  $("#phone").html($(this).parent().siblings(".phone").html());
  $("#md1").trigger('click');
});

  $(document).on("click", "b.remove-user" ,async function(){
          //let x=confirm("آیا اطمینان دارید که می خواهید این کاربر را حذف کنید؟\nدر صورت تایید امکان بازیابی کاربر وجود نخواهد داشت");
        
            let x=await Hconfirm({Ctext:"آیا اطمینان داردید که میخواهید این کاربر را حذف کنید ؟ \n درصورت تایید ، امکان بازیابی وجود نخواهد داشت"});

         
          if(x){
                 
                mydelete($(this).attr("data-id"),"/user/delete/");
         }
  });

 

});





</script>


@{end}
