Sindbad~EG File Manager

Current Path : /home/numerotech/test-abs.numerotech.com/common_abs_v2/core/templates/users/DEMO/Q/
Upload File :
Current File : //home/numerotech/test-abs.numerotech.com/common_abs_v2/core/templates/users/DEMO/Q/step1.html

<div class="row">
    <div class="col">
        <h4 class="alert alert-info text-center">Your team mate should be a TNOA member and a PG from the same institution</h4>
    </div>
</div>
<ul class="nav nav-tabs" id="myTab" role="tablist">
        <li class="nav-item p-2">
            <button type="button" class="nav-link active " value="1">Step 1</button>
        </li>
        <li class="nav-item p-2">
            <button type="button" class="nav-link nav_btn_gray" value="2" onclick="{% if data.cur_step >= 1 %}jump_step(2){% endif %}">Step 2</button>
        </li>
    </ul>
<div class="tab-content " id="myTabContent">
    <div class="tab-pane fade show active p-2 rounded"  role="tabpanel" >
    <form method="POST" action="{{url_for('main.Step1post',abs_id=abs_id,abs_type=abs_type,conf_id=conf_id,conf_key=conf_key)}}" id="form_s1">
        <div class="container" id="step1">
            <!-- <div class="row">
                <div class="col">
                    <h4 class="alert alert-info text-center">Your team mate should be a TNOA member and a PG from the same institution</h4>
                </div> -->
            </div>
            <div class="row">
                <div class="col form-group">
                    <label class="font-weight-bold">Membership Number</label>
                    <br />
                    <span>{{user_info.membership_no or 'Non Member'}}<input type="hidden" name="member_id" id="member_id" value="{{user_info.membership_no}}" /></span>
                </div>
                <div class="col form-group">
                    <label class="font-weight-bold"> Name</label>
                    <br />
                    <span>{{user_info.full_name or ''}}<input type="hidden" name="name" id="name" value="{{user_info.full_name}}" /></span>
                </div>
            </div>
            <div class="row ">
                <div class="col form-group">
                    <label class="font-weight-bold">An authorisation letter from the HOD to be uploaded:</label>
                </div>
            </div>
            <div  class="row py-3">
                <div class="col form-group text-center" id="uploaing_img">
                    <button type="button" class="btn btn-danger" id="upload_btn">Upload Authorisation Letter</button>
                </div>
                <div class="col text-center form-group" id="img_div">
                    <img src="{{ data.path or '' }}{{ data.file_name or '' }}" width="200px" id="uploaded_img" /><button class="btn" type="button" id="delete_img" value="{{ data.upload_id or '' }}"><i class="fa fa-trash"></i></button>
                </div>
            </div>
            <input type="hidden" name="">
            <div class="row">
                <div class="col form-group">
                    <label class="font-weight-bold">Team mate:</label>
                </div>
            </div>
            <div class="row">
                <div class="col text-center form-group" id="save_table">
                    <button type="button" class="btn btn-danger" id="Selectteammate">Click Here To Select Your Team mate</button>
                    <br />
                </div>
            </div>
            <div class="row">
                <div class="col form-group">
                    <label class="font-weight-bold">Institution Name (Not Exceeding 150 characters)<span class="text-danger">*</span></label>
                    <span id="chars" style="color: red;"></span><span id="chars_text" style="color: blue;"></span>
                </div>
            </div>
            <div class="row">
                <div class="col py-2 form-group">
                    <textarea type="text" name="title" id="title" class="form-control" value="" placeholder="Institution Name">{{ data.title or '' }}</textarea>
                </div>
            </div>
            <div class="row">
                <div class="col form-group">
                    <label class="font-weight-bold">City</b><span class="text-danger">*</span></label><br>
                    <input type="text" name="city" id="city" class="form-control" value="{{ data.misc1  or '' }}">
                </div>
                <div class="col form-group">
                    <label class="font-weight-bold">State</b><span class="text-danger">*</span></label>
                    <select name="state" id="state" class="form-control">
                        <option value="">--Select--</option>
                        <option value="Tamil Nadu">Tamil Nadu</option>
                        <option value="Pondicherry">Pondicherry</option>
                    </select>
                </div>
            </div>
            <div class="row">
                <div class="col float-right py-2">
                    <input type="button" name="next" id="next" class="btn btn-primary float-right" value="Next" onclick="move(1,1)" />
                </div>
            </div>
        </div>
        <div id="step2"></div>
        <input type="hidden" name="user_id" id="user_id" value="{{user_id}}" />
        <input type="hidden" name="abs_id" id="abs_id" value="{{abs_id}}" />
        <input type="hidden" name="step" id="step" value="1" />
        <input type="hidden" name="step" id="is_next" value="1" />
        <input type="hidden" name="cur_step" id="cur_step" value="{{ data.cur_step or 0 }}">
    </form>
</div>
<!-- The Modal -->
<form id="upload_form_model">
    <div class="modal" id="upload_model">
        <div class="modal-dialog modal-lg">
            <div class="modal-content">
                <!-- Modal Header -->
                <div class="modal-header">
                    <h4 class="modal-title">Upload your authorisation letter from the HOD</h4>
                    <button type="button" class="close" data-dismiss="modal">&times;</button>
                </div>

                <!-- Modal body -->
                <div class="modal-body container">
                    <div class="row">
                        <div class="col">
                            <label><b class="text-red"> Note : </b>Please upload image only in ( JPEG , JPG , PNG , TIFF ) Format and Image size Under 5MB only </label>
                        </div>
                    </div>
                    <div class="row">
                        <div class="col">
                            <input type="file" name="upload_file" id="upload_file" accept="image/*" class="form-control" required />
                        </div>
                    </div>
                    <div class="row">
                        <div class="col p-4">
                            <input type="button" name="upload_img" id="upload_img" class="btn btn-success" value="Click here to Submit file" />
                        </div>
                    </div>
                </div>

                <!-- Modal footer -->
                <div class="modal-footer">
                    <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
                </div>
                <div id="searchmodel"></div>
            </div>
        </div>
    </div>
</form>
<form id="search_model">
    <div class="modal" id="searchcoinst">
        <div class="modal-dialog modal-lg">
            <div class="modal-content" style="display: table;">
                <!-- Modal Header -->
                <div class="modal-header">
                    <h4 class="modal-title">Search Team mate</h4>
                    <button type="button" class="close" data-dismiss="modal">&times;</button>
                </div>

                <!-- Modal body -->
                <div class="modal-body container">
                    <div class="row">
                        <div class="col">
                            <label class="font-weight-bold">Type Membership No or Name or Email to search</label><br />
                            <div class="input-group">
                              <input type="text" name="searchtext" id="searchtext" class="form-control" required placeholder="Enter to search" />
                              <div class="input-group-append">
                                  <button type="button" class="btn btn-outline-secondary" name="searchbtnpa" id="searchbtnpa" type="button">
                                      Search
                                  </button>
                                  </div>
                            </div><br>
                                  <label id="searchtext-error" class="error" for="searchtext"></label>
                        </div>
                    </div>
                    <div id="searchtable"></div>
                    
                </div>

                <!-- Modal footer -->
                <div class="modal-footer">
                    <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
                </div>
                <div id="searchmodel"></div>
            </div>
        </div>
    </div>
</form>

{% block script %}

<script type="text/javascript">
    var BaseUrl = document.location.origin;
    var oneMB = 1048576;
    var conf_id = $("#conf_id").val();
    var conf_key = $("#conf_key").val();
    var abs_type = $("#abs_type").val();
    get_presenting_author();
    $(document).ready(function () {
        $("#state").val("{{ data.misc2 or '' }}")
        var path = "{{ data.path }}"
        if ( path != "None" ){
         $("#uploaing_img").hide();
        }
        else{
            $("#img_div").hide();
        }

        $("#upload_btn").click(function () {
            $("#upload_model").modal("show");
        });
        $("#search_model").keypress(function(e)
        {
          if(e.which == 13)
          {
          validate_search();
            return false
          }
          return true
        });
        });


    $("#Selectteammate").click(function () {
            $("#searchcoinst").modal("show");
        });
    $("#search_model").keypress(function(e)
        {
          if(e.which == 13)
          {
            validate_search();
            return false
          }
          return true
        });
        $("#searchbtnpa").click(validate_search);
        function validate_search() {
            $("#search_model").validate({
                    rules: {
                        searchtext:{
                            normalizer: function (value) {
                    return $.trim(value);
                             },
                            required:true,
                            minlength:3,
                        }
                    },
                    messages: {
                        searchtext: {
                            required:"Please enter membership number,name,email",
                            minlength:"Please enter more than three"
                    },
                },
                });
                if($("#search_model").valid()){
                    var searchtext = $("#searchtext").val();
                      $.ajax({
                type: "GET",
                url: BaseUrl + "/searchauthor/"+abs_type+"/"+conf_id+"/"+conf_key,
                data: {
                    'searchtext': searchtext,'btn_val':"1"
                },
                dataType: "html",
                success: function (data) {
                    // alert("success")
                    // alert(data)
                    $("#searchtable").html(data);
                    return true;
                },
            });
                }
        };
        function select_Author(user_id) {
            var abs_id = $("#abs_id").val()
                $.ajax({
                    type: 'GET', 
                    url: BaseUrl + "/co_author/"+abs_type+"/"+conf_id+"/"+conf_key,
                    data: {
                        'searchvalue':user_id,
                        'abs_id':abs_id,
                        'role_id':36
                    },
                    dataType: 'html',
                    success: function(data) {
                    $("#searchcoinst").modal('hide');
                    $("#searchtable").html("");
                    getauthordata();
                    $("#searchdiv").hide();

                    }
              })
                return false;
              }
         function get_presenting_author() {
        var abs_id = $("#abs_id").val();
        $.ajax({
            type: "GET",
            url: BaseUrl + "/ppstep1getauthor/"+abs_type+"/"+conf_id+"/"+conf_key,
            data: { abs_id: abs_id },
            dataType: "html",
            success: function (data) {
                if (data == 0) {
                } else {
                    $("#save_table").html(data);
                    $("#searchdiv").hide();
                }
            },
        });
        return false;
    }
    $("#upload_img").click(function(){
            if(!$("#upload_form_model").valid())
                {
                    return false
                }
            var ext = $('#upload_file').val().split('.').pop().toLowerCase();
            if($.inArray(ext, ['gif','jpg','jpeg','png','jfif','tif','tiff']) == -1)
            {
                alert('Invalid file type');
            }
            else if($('#upload_file')[0].files[0].size > (oneMB * 5))
            {
                alert('File Must less than 5MB');
            }
            else{
                uploadimg();
            }
    })
    var $title = $('#title');
    var $chars = $("#chars");
    // var $chars1 = $("#chars1");
    var x100 = 150;
    var chars_text  = $("#chars_text")
    chars_text.html(" characters remaining");
    $chars.css("color","red");
    $chars.html(x100);
    $title.on('keyup', countChar);
    function countChar() {
        var textLength = $title.val().length;
        var textRemaining = x100 - textLength;
        if (textRemaining < 0) {
            $chars.attr("class", "text-danger ml-2");
            var textRemaining1 = textRemaining;
            $chars.html(textRemaining1);
            chars_text.html(" characters exceeded");
            // $chars.html(textRemaining1 + " characters exceeded");
        } else {
            $chars.attr("class", "text-danger ml-2");
            chars_text.html(" characters remaining");
            $chars.html(textRemaining);
        }
    }
    
    function uploadimg() {
           var fd     = new FormData();
           var img    = new FormData($("#upload_form_model")[0]);
           var abs_id = $("#abs_id").val();
           fd.append('file', img);
           $.ajax({
             type: 'POST',
             url: BaseUrl + "/upload_img/"+abs_id+"/"+abs_type+"/"+conf_id+"/"+conf_key,
             data: img,
             contentType: false,
             processData: false,
             cache: false,
             dataType: 'json',
           }).done(function(data, jqXHR) {
            // $("#asset_data").val(data)
            // $("#preview").attr("src","data:image/jpeg;base64,"+data)
            // alert("hello")
            $("#upload_model").modal("hide");
            $("#img_div").show();
            $("#uploaded_img").attr("src",data.path+data.file_name);
            $("#uploaing_img").hide();
            $("#delete_img").val(data.upload_id)
           }).fail(function(data) {});
         }
    $("#delete_img").click(function(){
        var upload_id = $(this).val();
        // alert(upload_id)
         $.ajax({
                type: "POST",
                url: BaseUrl + "/delete_img/"+abs_type+"/"+conf_id+"/"+conf_key,
                data: {'upload_id':upload_id },
                dataType: "json",
                success: function (data) {
                    // alert(data);
                    $("#img_div").hide();
                    $("#uploaing_img").show();
                    // $("#addcoinst").modal('show');
                },
            });
    })

</script>
{% endblock %}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists