HEX
Server: Apache/2.4.46 (Ubuntu)
System: Linux localhost 5.11.0-49-generic #55-Ubuntu SMP Wed Jan 12 17:36:34 UTC 2022 x86_64
User: root (0)
PHP: 7.4.16
Disabled: 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,
Upload Files
File: /var/www/html/hrms-production/resources/views/components/scheme-wise-post-modal.blade.php
{{-- Add Sanctioned Post --}}
<div class="modal fade" id="addSanctionedPost">
    <div class="modal-dialog modal-lg">
        <div class="modal-content">
            <div class="modal-header">
                <h4 class="modal-title">Add Sanctioned Post</h4>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">
                <!-- Main content -->
                <form id="addSanctionedPostform">
                    <input type="hidden" name="_token" id="token_sanctioned_post" value="{{ csrf_token() }}">
                    <div class="card-body">
                        <div class="row">
                            <div class="col-md-6">
                                <div class="form-group mb-">
                                    <label class="mb-0" for="Sheme Name">Sheme Name <span
                                            class="text-danger">*</label></label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="SchemeNameId" id="SchemeNameIdSanctionedPost"
                                        data-placeholder="Select Sheme" required>
                                        <option value="" disabled selected>Select Sheme</option>
                                    </select>
                                </div>
                            </div>
                            <div class="col-md-6">
                                <div class="form-group mb-">
                                    <label class="mb-0" for="Designation">Designation <span
                                            class="text-danger">*</label></label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="DesignationId" id="DesignationIdSanctionedPost"
                                        data-placeholder="Select Designation" required>
                                        <option value="" disabled selected>Select Designation</option>
                                    </select>
                                </div>
                            </div>
                        </div>
                        <div class="row">
                            <div class="col-md-4">
                                <div class="form-group mb-2">
                                    <label class="mb-0" for="Cadre">Cadre <span class="text-danger">*</label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="CadreId" id="CadreIdSanctionedPost"
                                        data-placeholder="Select Cadre" required>
                                        <option value="" disabled selected>Select Cadre</option>
                                    </select>
                                </div>
                            </div>
                            <div class="col-md-4">
                                <div class="form-group mb-2">
                                    <label class="mb-0" for="Group">Group <span class="text-danger">*</label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="GroupId" id="GroupIdSanctionedPost"
                                        data-placeholder="Select Group" required>
                                        <option value="" disabled selected>Select Group</option>
                                    </select>
                                </div>
                            </div>
                            <div class="col-md-4">
                                <div class="form-group mb-2">
                                    <label class="mb-0" for="SanctionedPost">Sanctioned Post <span
                                            class="text-danger">*</label>
                                    <input type="text" class="form-control form-control-sm" id="SanctionedPost"
                                        name="SanctionedPost" onkeyup="onlyNumbers(this)">
                                </div>
                            </div>
                        </div>
                        <hr />
                        <div class="row">
                            <div class="col-12">
                                <div class="d-flex align-items-center justify-content-center">
                                    <button type="button" class="btn btn-sm btn-outline-secondary mx-1"
                                        data-dismiss="modal" aria-label="Close">Cancel</button>
                                    <button type="submit" class="btn btn-sm btn-outline-info mx-1">Save &amp;
                                        New</button>
                                    <button type="submit" id="btn-save-sanctionedpost"
                                        class="btn btn-sm btn-info mx-1">Save</button>
                                </div>
                            </div>
                        </div>
                </form>
            </div>
        </div>
    </div>
    <!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->

{{-- Update Sanctioned Post --}}
<div class="modal fade" id="updateSanctionedPost">
    <div class="modal-dialog modal-lg">
        <div class="modal-content">
            <div class="modal-header">
                <h4 class="modal-title">Edit Sanctioned Post <span id="SanctionedPostName" class="text-info"></span>
                </h4>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <div class="modal-body">
                <!-- Main content -->
                <form id="updateSanctionedPostform">
                    <input type="hidden" name="_token" id="token_sanctioned_post_update" value="{{ csrf_token() }}">
                    <input type="hidden" id="SchemeWisePostId" name="SchemeWisePostId">
                    <div class="card-body">
                        <div class="row">
                            <div class="col-md-6">
                                <div class="form-group mb-">
                                    <label class="mb-0" for="Sheme Name">Sheme Name <span
                                            class="text-danger">*</label></label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="SchemeNameId" id="EditSchemeNameIdSanctionedPost"
                                        data-placeholder="Select Sheme">
                                        <option value="" disabled selected>Select Sheme</option>
                                    </select>
                                </div>
                            </div>
                            <div class="col-md-6">
                                <div class="form-group mb-">
                                    <label class="mb-0" for="Designation">Designation <span
                                            class="text-danger">*</label></label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="DesignationId" id="EditDesignationIdSanctionedPost"
                                        data-placeholder="Select Designation">
                                        <option value="" disabled selected>Select Designation</option>
                                    </select>
                                </div>
                            </div>
                        </div>
                        <div class="row">
                            <div class="col-md-4">
                                <div class="form-group mb-2">
                                    <label class="mb-0" for="Cadre">Cadre <span class="text-danger">*</label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="CadreId" id="EditCadreIdSanctionedPost"
                                        data-placeholder="Select Cadre" required>
                                        <option value="" disabled selected>Select Cadre</option>
                                    </select>
                                </div>
                            </div>
                            <div class="col-md-4">
                                <div class="form-group mb-2">
                                    <label class="mb-0" for="Group">Group <span class="text-danger">*</label>
                                    <select class="form-control form-control-sm select2" style="width: 100%;"
                                        aria-hidden="true" name="GroupId" id="EditGroupIdSanctionedPost"
                                        data-placeholder="Select Group" required>
                                        <option value="" disabled selected>Select Group</option>
                                    </select>
                                </div>
                            </div>
                            <div class="col-md-4">
                                <div class="form-group mb-2">
                                    <label class="mb-0" for="SanctionedPost">Sanctioned Post <span
                                            class="text-danger">*</label>
                                    <input type="text" class="form-control form-control-sm" id="EditSanctionedPost"
                                        name="SanctionedPost" onkeyup="onlyNumbers(this)">
                                </div>
                            </div>
                        </div>
                        <hr />
                        <div class="row">
                            <div class="col-12">
                                <div class="d-flex align-items-center justify-content-center">
                                    <button type="button" class="btn btn-sm btn-outline-secondary mx-1"
                                        data-dismiss="modal" aria-label="Close">Cancel</button>
                                    <button type="submit" name="Update" value="Update"
                                        class="btn btn-sm btn-info mx-1">Update</button>
                                </div>
                            </div>
                        </div>
                </form>
            </div>
        </div>
    </div>
    <!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>
<!-- /.modal -->

{{-- JS Start Here --}}
{{-- Scheme List --}}
<script>
    $(document).ready(function() {
        $.ajax({
          type: "GET",
          url: "{{ url('/scheme-name-list') }}",
          dataType: "json",
          success: function(response) {
            var json = response.SchemeNameList;
            $.each(json, function(i, schemename) {
              $("#SchemeNameIdSanctionedPost, #EditSchemeNameIdSanctionedPost").append("<option value='" + schemename.SchemeNameId + "'>" + schemename.NameOfScheme + "</option>");
              $('#SchemeNameIdSanctionedPost, #EditSchemeNameIdSanctionedPost').trigger('change');
            });
          }
        });
    });
</script>

{{-- Cadre List --}}
<script>
    $(document).ready(function() {
        $.ajax({
          type: "GET",
          url: "{{ url('/cadre-list') }}",
          dataType: "json",
          success: function(response) {
            var json = response.Cadre;
            $.each(json, function(i, cadre) {
              $("#CadreIdSanctionedPost, #EditCadreIdSanctionedPost").append("<option value='" + cadre.CadreId + "'>" + cadre.CadreName + "</option>");
              $('#CadreIdSanctionedPost, #EditCadreIdSanctionedPost').trigger('change');
            });
          }
        });
    });
</script>

{{-- Group List --}}
<script>
    $(document).ready(function() {
          $.ajax({
            type: "GET",
            url: "{{ url('/group-list') }}",
            dataType: "json",
            success: function(response) {
              var json = response.Group;
              $.each(json, function(i, group) {
                $("#GroupIdSanctionedPost, #EditGroupIdSanctionedPost").append("<option value='" + group.GroupId + "'>" + group.GroupName + "</option>");
                $('#GroupIdSanctionedPost, #EditGroupIdSanctionedPost').trigger('change');
              });
            }
          });
    }); 
</script>

{{-- Designation List --}}
<script>
    $(document).ready(function() {
          $.ajax({
            type: "GET",
            url: "{{ url('/designation-list') }}",
            dataType: "json",
            success: function(response) {
              var json = response.Designation;
              $.each(json, function(i, designation) {
                $("#DesignationIdSanctionedPost, #EditDesignationIdSanctionedPost").append("<option value='" + designation.DesignationId + "'>" + designation.DesignationName + "</option>");
                $('#DesignationIdSanctionedPost, #EditDesignationIdSanctionedPost').trigger('change');
              });
            }
          });
    }); 
</script>

{{-- Check Availablity --}}
<script>
    function checkDuplicateSanctionedPost(element, id){
        var id = id;
        var SanctionedPost = $(element).val();
        if (SanctionedPost == "") {
            $('span#CheckSanctionedPost, #editCheckSanctionedPost').css("display", "none");
        } else {
            $('span#CheckSanctionedPost, #editCheckSanctionedPost').css("display", "block");
        }
        //alert (SanctionedPost);
        $.ajax({
            type: "GET",
            url: '{{ url("/") }}/check-grade-pay/',
            data: {SanctionedPost:SanctionedPost, id:id},
            dataType: "json",
            success: function(res) {
                if(res.exists){
                    $('span#CheckSanctionedPost, span#editCheckSanctionedPost').html('<span class="text-danger">SanctionedPost name is already exist!</span>');
                    $('#btn-save-new--sanctioned-post, #btn-save-sanctioned-post, #btn-update-sanctioned-post').attr('disabled', true);
                } else {
                    $('span#CheckSanctionedPost, span#editCheckSanctionedPost').html('<span class="text-success">SanctionedPost name is available!</span>');
                    $('#btn-save-new-sanctioned-post, #btn-save-sanctioned-post, #btn-update-sanctioned-post').attr('disabled', false);
                }
            },
            error: function (jqXHR, exception) {
            }
        });
    }
</script>

{{-- Store Sanctioned Post --}}
<script>
    var reload = 0;
    $(function () {
      $.validator.setDefaults({
        submitHandler: function () {
            saveSchemeWisePostRecord();
        }
      });
      // Reload page after data save 
      $('#btn-save-sanctionedpost').click(function(){
        reload = 1;
      });

      // Validate Fields
      $('#addSanctionedPostform').validate({
        rules: {
            SchemeNameId: {
            required: true,
          },
          DesignationId: {
            required: true,
          },
          CadreId: {
            required: true,
          },
          GroupId: {
            required: true,
            // remote: {
            //     type: "POST",
            //     url:'{{ url("/") }}/check-duplicate-schemewise-post',
            //     data: {
            //         SchemeNameId: function() {
            //         return $( "#SchemeNameIdSanctionedPost :selelcted").val();
            //     },
            //         DesignationId: function() {
            //         return $('#DesignationIdSanctionedPost :selelcted').val();
            //     },
            //         GroupId: function() {
            //         return $('#GroupIdSanctionedPost :selelcted').val();
            //     },
            //     '_token':$('meta[name="csrf-token"]').attr('content')
            //     }
            // },
          },
          SanctionedPost: {
            required: true,
          },
        },
        messages: {
            SchemeNameId: {
            required: "Please select the scheme name.",
          },
          DesignationId: {
            required: "Please select the designation name.",
          },
          CadreId: {
            required: "Please select the cadre name.",
          },
          GroupId: {
            required: "Please select the group name.",
            remote: "The Group name already exists in the selected scheme.",
          },
          SanctionedPost: {
            required: "Number of Sanctioned Post is required.",
          },
        },
        errorElement: 'span',
        errorPlacement: function (error, element) {
          error.addClass('invalid-feedback');
          element.closest('.form-group').append(error);
        },
        highlight: function (element, errorClass, validClass) {
          $(element).addClass('is-invalid');
        },
        unhighlight: function (element, errorClass, validClass) {
          $(element).removeClass('is-invalid');
        }
      });
    });
</script>

{{-- Save Data Function --}}
<script>
    function saveSchemeWisePostRecord() {
        event.preventDefault();
        $.ajax({
            type: "post",
            url: "{{ url('store-schemewise-post') }}",
            dataType: "json",
            data: $('form#addSanctionedPostform').serialize(),
            success: function(response) {
                const Toast = Swal.mixin({
                      toast: true,
                      position: 'top-end',
                      showConfirmButton: false,
                      timer: 2000,
                      timerProgressBar: true,
                      didOpen: (toast) => {
                        toast.addEventListener('mouseenter', Swal.stopTimer)
                        toast.addEventListener('mouseleave', Swal.resumeTimer)
                      }
                    })
                    Toast.fire({
                      icon: 'success',
                      title: 'Number of post added successfully!'
                    });
                $('form#addSanctionedPostform').each(function() {
                    this.reset();
                    $('#SchemeNameIdSanctionedPost, #DesignationIdSanctionedPost, #GroupIdSanctionedPost').val(null).trigger('change');
                });
                
                if(reload)
                {
                    location.reload();
                }
            },
            error: function(response) {
                const Toast = Swal.mixin({
                      toast: true,
                      position: 'top-end',
                      showConfirmButton: false,
                      timer: 3000,
                      timerProgressBar: true,
                      didOpen: (toast) => {
                        toast.addEventListener('mouseenter', Swal.stopTimer)
                        toast.addEventListener('mouseleave', Swal.resumeTimer)
                      }
                    })
                    Toast.fire({
                      icon: 'error',
                      title: 'Sorry, Something went wrong!'
                    })
            }
        });
    }
</script>

{{-- Activate / De-Activate --}}
<script>
    // Activate
    function activateSchemeWisePost(SchemeWisePostId) {
        var SchemeWisePostId = SchemeWisePostId;
        Swal.fire({
            title: 'Activate Sanctioned Post?',
            text: "Are you sure you want to activate Sanctioned Post!",
            icon: 'warning',
            showCancelButton: true,
            confirmButtonColor: '#3085d6',
            cancelButtonColor: '#d33',
            confirmButtonText: 'Yes, activate it!'
        }).then((result) => {
            if (result.isConfirmed) {
                $.ajax({
                    type: "post",
                    url: "{{ url('/') }}/change-status-schemewise-post",
                    dataType: "json",
                    data: {
                        _token: "{{csrf_token()}}",
                        SchemeWisePostId: SchemeWisePostId,
                    },
                    success: function(response) {
                        Swal.fire({
                            icon: 'success',
                            title: 'Sanctioned Post has been activated!',
                            showConfirmButton: false,
                            timer: 1500
                        }).then(function() {
                            location.reload();
                        });
                    }
                });
            }
        });
    }
    // Deactivate
    function deactivateSchemeWisePost(SchemeWisePostId) {
        var SchemeWisePostId = SchemeWisePostId;
        Swal.fire({
            title: 'De-activate Sanctioned Post?',
            text: "Are you sure you want to De-activate Sanctioned Post!",
            icon: 'warning',
            showCancelButton: true,
            confirmButtonColor: '#3085d6',
            cancelButtonColor: '#d33',
            confirmButtonText: 'Yes, De-activate it!'
        }).then((result) => {
            if (result.isConfirmed) {
                $.ajax({
                    type: "post",
                    url: "{{ url('/') }}/change-status-schemewise-post",
                    dataType: "json",
                    data: {
                        _token: "{{csrf_token()}}",
                        SchemeWisePostId: SchemeWisePostId,
                    },
                    success: function(response) {
                        Swal.fire({
                            icon: 'success',
                            title: 'Sanctioned Post has been De-activated!',
                            showConfirmButton: false,
                            timer: 1500
                        }).then(function() {
                            location.reload();
                        });
                    }
                });
            }
        });
    }
</script>
{{-- Edit Sanctioned Post --}}
<script>
    function editSchemeWisePost(SchemeWisePostId)
  {
      var SchemeWisePostId = SchemeWisePostId;
      $.ajax({
          type: "post",
          url: "{{ url('/') }}/edit-schemewise-post",
          dataType: "json",
          data: {
                _token: "{{csrf_token()}}",
                SchemeWisePostId: SchemeWisePostId,
            },
          success: function (response) {
              //$('#SanctionedPostName').val(response.GetSchemeWisePost.SanctionedPostName);
              $('#SchemeWisePostId').val(response.GetSchemeWisePost.SchemeWisePostId);
              //$('span#SanctionedPostName').html('#' +response.GetSchemeWisePost.SanctionedPostName);
              $('#EditDesignationIdSanctionedPost').val(response.GetSchemeWisePost.DesignationId)
              $('#EditDesignationIdSanctionedPost').trigger('change')
              // Scheme List
              $('#EditSchemeNameIdSanctionedPost').val(response.GetSchemeWisePost.SchemeNameId)
              $('#EditSchemeNameIdSanctionedPost').trigger('change')
              // Cadre List
              $('#EditCadreIdSanctionedPost').val(response.GetSchemeWisePost.CadreId)
              $('#EditCadreIdSanctionedPost').trigger('change')
              // Group List
              $('#EditGroupIdSanctionedPost').val(response.GetSchemeWisePost.GroupId)
              $('#EditGroupIdSanctionedPost').trigger('change')
              // Num. of Post
              $('#EditSanctionedPost').val(response.GetSchemeWisePost.SanctionedPost);
          }
      });
      $('#updateSanctionedPost').modal('show');
  }
</script>

{{-- Validate and Update Record  --}}
<script>
    $(function () {
      $.validator.setDefaults({
        submitHandler: function () {
            event.preventDefault();
        $.ajax({
                type: "post",
                url: "{{ url('update-schemewise-post') }}",
                data: $("#updateSanctionedPostform").serialize(),
                success: function(response) {
                  const Toast = Swal.mixin({
                      toast: true,
                      position: 'top-end',
                      showConfirmButton: false,
                      timer: 2000,
                      timerProgressBar: true,
                      didOpen: (toast) => {
                        toast.addEventListener('mouseenter', Swal.stopTimer)
                        toast.addEventListener('mouseleave', Swal.resumeTimer)
                      }
                    })
                    Toast.fire({
                      icon: 'success',
                      title: 'Record updated successfully!'
                    });
                //     setTimeout(function(){
                //     window.location.reload(1);
                //   }, 2000);
                },
                error: function(data) {
                  const Toast = Swal.mixin({
                      toast: true,
                      position: 'top-end',
                      showConfirmButton: false,
                      timer: 2000,
                      timerProgressBar: true,
                      didOpen: (toast) => {
                        toast.addEventListener('mouseenter', Swal.stopTimer)
                        toast.addEventListener('mouseleave', Swal.resumeTimer)
                      }
                    })
                    Toast.fire({
                      icon: 'error',
                      title: 'Something went wrong!'
                    });
                }
            });
        }
      });
      $('#updateSanctionedPostform').validate({
        rules: {
            SchemeNameId: {
            required: true,
          },
          DesignationId: {
            required: true,
          },
          GroupId: {
            required: true,
          },
          SanctionedPost: {
            required: true,
          },
        },
        errorElement: 'span',
        errorPlacement: function (error, element) {
          error.addClass('invalid-feedback');
          element.closest('.form-group').append(error);
        },
        highlight: function (element, errorClass, validClass) {
          $(element).addClass('is-invalid');
        },
        unhighlight: function (element, errorClass, validClass) {
          $(element).removeClass('is-invalid');
        }
      });
    });
</script>

{{-- Delete Sanctioned Post --}}
<script>
    function deleteSchemeWisePost(SchemeWisePostId) {
        var SchemeWisePostId = SchemeWisePostId;
                Swal.fire({
                    title: "Delete Record?",
                    text: "Are you sure you want to delete this Record?",
                    icon: "warning",
                    icon: "warning",
                    showCancelButton: true,
                    confirmButtonColor: "#3085d6",
                    cancelButtonColor: "#d33",
                    confirmButtonText: "Yes, delete it!",
                }).then((result) => {
                    if (result.isConfirmed) {
                        $.ajax({
                            type: "post",
                            url: "{{ url('/') }}/delete-schemewise-post",
                            dataType: "json",
                            data: {
                                _token: "{{csrf_token()}}",
                                SchemeWisePostId: SchemeWisePostId,
                            },
                            success: function (response) {
                                Swal.fire({
                                    icon: "success",
                                    title: "Record has been deleted!",
                                    showConfirmButton: false,
                                    timer: 1500,
                                }).then(function () {
                                    location.reload();
                                });
                            },
                        });
                    }
                });
    }
</script>