%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/opti/workflow/src/views/document/
Upload File :
Create Path :
Current File : /home/opti/workflow/src/views/document/myDocument.ejs

<% include ../partials/header %>

<% include ../partials/sidebar %>

<style>
    .quick-btn {
        background: #EEEEEE;
        box-shadow: 0 0 0 1px #F8F8F8 inset, 0 0 0 1px #CCCCCC;
        color: #444444;
        display: inline-block;
        height: 80px;
        margin: 10px;
        padding-top: 16px;
        text-align: center;
        text-decoration: none;
        width: 90px;
        position: relative;
    }

    .quick-btn span {
        display: block;
    }

    .quick-btn .label {
        position: absolute;
        right: -5px;
        top: -5px;
    }

    .quick-btn:hover {
        text-decoration: none;
        color: #fff;
        background-color: #4d7589;
        box-shadow: 3px 4px 1px #ccc;
    }

    .quick-btn.small {
        width: 40px;
        height: 30px;
        padding-top: 6px;
    }
</style>

<link href="/app-assets/vendors/kartik/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />
<!-- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" crossorigin="anonymous"> -->
<link href="/app-assets/vendors/kartik/themes/explorer-fas/theme.css" media="all" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.0/jquery-confirm.min.css">


<div class="text-center">
    <a class="quick-btn text-red" href="#" data-toggle="modal" data-target="#folder">
        <i class="la la-plus fa-2x"></i>
        <span>New Folder</span>
    </a>
    <a class="quick-btn text-red" href="#" data-toggle="modal" data-target="#file">
        <i class="la la-plus fa-2x"></i>
        <span>New File</span>
    </a>
</div>

<div class="app-content content">
    <div class="content-wrapper">
        <div class="content-header row">
        </div>
        <div class="content-body">
            <!-- Breadcrumb starts-->
            <div class="content-header-left col-md-6 col-12 mb-2">
                <h3 class="content-header-title">Document Manager</h3>
                <div class="row breadcrumbs-top">
                    <div class="breadcrumb-wrapper col-12">
                        <ol class="breadcrumb">
                            <li class="breadcrumb-item"><a href="/">Dashboard</a>
                            </li>
                            <li class="breadcrumb-item active">Document Manager
                            </li>
                        </ol>
                    </div>
                </div>
            </div>
            <!-- Breadcrumb ends-->

            <div class="content-body">
                <!-- Zero configuration table -->
                <section id="configuration">
                    <div class="row">
                        <div class="col-12">
                            <div class="card">
                                <div class="card-header">
                                    <h4 class="card-title">Document Manager</h4>
                                    <a class="heading-elements-toggle"><i class="la la-ellipsis-v font-medium-3"></i></a>
                                    <div class="heading-elements">
                                        <ul class="list-inline mb-0">
                                            <li><a data-action="collapse"><i class="ft-minus"></i></a></li>
                                            <li><a data-action="reload"><i class="ft-rotate-cw"></i></a></li>
                                            <li><a data-action="expand"><i class="ft-maximize"></i></a></li>
                                            <li><a data-action="close"><i class="ft-x"></i></a></li>
                                        </ul>
                                    </div>
                                </div>
                                <div class="card-content collapse show">
                                    <div class="card-body card-dashboard">
                                        <table class="table table-striped table-bordered zero-configuration">
                                            <thead>
                                                <tr>
                                                    <th>S/N</th>
                                                    <th>Name</th>
                                                    <th>Size</th>
                                                    <th>Date</th>
                                                    <th>Type</th>
                                                    <th>Action</th>
                                                </tr>
                                            </thead>
                                            <tbody>
                                                <% 
                                                function formatBytes(a, b) {
                                                    if (0 == a) return "0 Bytes";
                                                    var c = 1024,
                                                        d = b || 2,
                                                        e = ["Bytes", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"],
                                                        f = Math.floor(Math.log(a) / Math.log(c));
                                                    return parseFloat((a / Math.pow(c, f)).toFixed(d)) + " " + e[f]
                                                }                                                
                                                %>
                                                <% documents.forEach(function(document, index){ %>
                                                <tr>
                                                    <td>
                                                        <%= (index + 1) %>
                                                    </td>
                                                    <td>
                                                        <%= document.name %>
                                                    </td>
                                                    <td>
                                                        <%if (document.type == 1) { %>
                                                        <% } else { %>
                                                        <%= formatBytes(document.size) %>
                                                        <% } %>
                                                    </td>
                                                    <td>
                                                        <%= moment(document.createdAt).calendar(); %>
                                                    </td>
                                                    <td>
                                                        <%if (document.type == 1) { %>

                                                        <img class="brand-logo" style="width: 20px;" alt="" src="/app-assets/images/folder.png">

                                                        <% } else { %>

                                                        <img class="brand-logo" style="width: 20px;" alt="" src="/app-assets/images/report.png">

                                                        <% } %>
                                                    </td>
                                                    <td>
                                                        <%if (document.type == 1) { %>
                                                        <a href="/document/my-document/view/<%= document.uuid %>">
                                                            <button type="button" class="btn btn-icon btn-success btn-sm mr-1"><i
                                                                    class="la la-eye"></i></button>
                                                        </a>
                                                        <% } else { %>
                                                        <a href="/document/download/<%=document.fileName %>" download=<%=document.fileName
                                                            %>"><button type="button" class="btn btn-icon btn-success btn-sm mr-1"><i
                                                                    class="la la-cloud-download"></i></button></a>
                                                        <% } %>

                                                        <%if (document.type == 1) { %>
                                                        <button title="Edit" data-toggle="modal" folderId="<%= document.id %>"
                                                            fileName="<%= document.name %>" data-target="#editFolder"
                                                            class="btn btn-icon btn-warning btn-sm mr-1">
                                                            <i class="la la-pencil"></i>
                                                        </button>
                                                        <% } else { %>
                                                        <button title="Edit" data-toggle="modal" docId="<%= document.id %>"
                                                            fileName="<%= document.name %>" doc="<%= document.fileName %>"
                                                            data-target="#editDoc" class="btn btn-icon btn-warning btn-sm mr-1">
                                                            <i class="la la-pencil"></i>
                                                        </button>
                                                        <% } %>
                                                        <button type="button" title="Delete" onclick="deleteFile(this.value)"
                                                            value="<%= document.id %>" class="btn btn-icon btn-danger btn-sm mr-1"><i
                                                                class="la la-close"></i></button>
                                                    </td>
                                                </tr>
                                                <% }); %>
                                            </tbody>
                                            <tfoot>
                                                <tr>
                                                    <th>S/N</th>
                                                    <th>Name</th>
                                                    <th>Size</th>
                                                    <th>Date</th>
                                                    <th>Type</th>
                                                    <th>Action</th>
                                                </tr>
                                            </tfoot>
                                        </table>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </section>
                <!--/ Zero configuration table -->
            </div>
        </div>
    </div>
</div>


<div class="modal fade text-left" id="folder" tabindex="-1" role="dialog" aria-labelledby="myModalLabel35" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header bg-success">
                <h3 class="modal-title" id="myModalLabel35"> Create New Folder</h3>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <form method="POST" action="/document/new-folder">
                <input type="hidden" name="parentId" value="<%= docId %>">
                <div class="modal-body">
                    <fieldset class="form-group floating-label-form-group">
                        <label for="name">Folder Name</label>
                        <input type="text" class="form-control" name="folderName" id="folderName" placeholder="Folder Name">
                    </fieldset>
                </div>
                <div class="modal-footer">
                    <input type="reset" class="btn btn-outline-secondary btn-lg" data-dismiss="modal" value="close">
                    <input type="submit" class="btn btn-outline-primary btn-lg" value="Save">
                </div>
            </form>
        </div>
    </div>
</div>


<div class="modal fade text-left" id="editFolder" tabindex="-1" role="dialog" aria-labelledby="myModalLabel35"
    aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header bg-success">
                <h3 class="modal-title" id="myModalLabel35"> Update Folder</h3>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <form method="POST" action="/document/update-folder" id="folderForm">
                <input type="hidden" name="folderId" id="folderId" value="" />
                <div class="modal-body">
                    <fieldset class="form-group floating-label-form-group">
                        <label for="name">Folder Name</label>
                        <input type="text" class="form-control" name="folderName" id="folderName" placeholder="Folder Name">
                    </fieldset>
                </div>
                <div class="modal-footer">
                    <input type="reset" class="btn btn-outline-secondary btn-lg" data-dismiss="modal" value="close">
                    <input type="submit" class="btn btn-outline-primary btn-lg" value="Save">
                </div>
            </form>
        </div>
    </div>
</div>


<div class="modal fade text-left" id="file" tabindex="-1" role="dialog" aria-labelledby="myModalLabel35" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header bg-success">
                <h3 class="modal-title" id="myModalLabel35"> Create New File</h3>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <form method="POST" action="/document/new-file" enctype="multipart/form-data">
                <input type="hidden" name="parentId" value="<%= docId %>">
                <div class="modal-body">
                    <fieldset class="form-group floating-label-form-group">
                        <label for="name">File Name</label>
                        <input type="text" class="form-control" name="name" id="name" placeholder="Enter File Name">
                    </fieldset>
                    <fieldset class="form-group floating-label-form-group">
                        <!-- <form action="/user/upload/image" method="post" enctype="multipart/form-data"> -->
                        <div class="form-group">
                            <div class="file-loading">
                                <input id="file-5" class="file" type="file" name="fileName" ata-preview-file-type="any"
                                    data-theme="fas">
                            </div>
                        </div>
                        <!-- </form> -->
                    </fieldset>
                </div>
                <div class="modal-footer">
                    <input type="reset" class="btn btn-outline-secondary btn-lg" data-dismiss="modal" value="close">
                    <input type="submit" class="btn btn-outline-primary btn-lg" value="Save">
                </div>
            </form>
        </div>
    </div>
</div>



<div class="modal fade text-left" id="editDoc" tabindex="-1" role="dialog" aria-labelledby="myModalLabel35" aria-hidden="true">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header bg-success">
                <h3 class="modal-title" id="myModalLabel35"> Update File</h3>
                <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                    <span aria-hidden="true">&times;</span>
                </button>
            </div>
            <form method="POST" action="/document/update-file" enctype="multipart/form-data" id="docForm">
                <input type="hidden" name="docId" id="docId" value="" />
                <div class="modal-body">
                    <fieldset class="form-group floating-label-form-group">
                        <label for="name">File Name</label>
                        <input type="text" class="form-control" name="name" id="docName" placeholder="Enter File Name">
                    </fieldset>
                    <fieldset class="form-group floating-label-form-group">
                        <!-- <form action="/user/upload/image" method="post" enctype="multipart/form-data"> -->
                        <div class="form-group">
                            <div class="file-loading">
                                <input id="fileName" class="file" type="file" name="fileName" ata-preview-file-type="any"
                                    data-theme="fas">
                            </div>
                        </div>
                        <!-- </form> -->
                    </fieldset>
                </div>
                <div class="modal-footer">
                    <input type="reset" class="btn btn-outline-secondary btn-lg" data-dismiss="modal" value="close">
                    <input type="submit" class="btn btn-outline-primary btn-lg" value="Save">
                </div>
            </form>
        </div>
    </div>
</div>




<!-- ////////////////////////////////////////////////////////////////////////////-->
<% include ../partials/footer %>


<!-- <script src="https://code.jquery.com/jquery-3.3.1.min.js" crossorigin="anonymous"></script> -->
<script src="/app-assets/vendors/kartik/js/plugins/sortable.js" type="text/javascript"></script>
<script src="/app-assets/vendors/kartik/js/fileinput.js" type="text/javascript"></script>
<script src="/app-assets/vendors/kartik/js/locales/fr.js" type="text/javascript"></script>
<script src="/app-assets/vendors/kartik/js/locales/es.js" type="text/javascript"></script>
<script src="/app-assets/vendors/kartik/themes/fas/theme.js" type="text/javascript"></script>
<script src="/app-assets/vendors/kartik/themes/explorer-fas/theme.js" type="text/javascript"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-confirm/3.3.0/jquery-confirm.min.js"></script>

<script>

    $('#editFolder').on('show.bs.modal', function (e) {

        console.log(e);

        var opener = e.relatedTarget; // Button that triggered the modal

        var folderId = $(opener).attr('folderId'); // Extract info from data-* attributes
        var folderName = $(opener).attr('fileName');

        console.log(folderId);
        console.log(folderName);


        $('#folderForm').find('[name="folderId"]').val(folderId);
        $('#folderForm').find('[name="folderName"]').val(folderName);
    });

    $('#editDoc').on('show.bs.modal', function (e) {

        var opener = e.relatedTarget; // Button that triggered the modal

        var docId = $(opener).attr('docId'); // Extract info from data-* attributes
        var fileName = $(opener).attr('fileName');
        var name = $(opener).attr('doc');

        $('#docForm').find('[name="docId"]').val(docId);
        $('#docForm').find('[name="name"]').val(fileName);
        // $('#docForm').find('[name="fileName"]').val(name);
    });


    function deleteFile(id) {

        $.confirm({
            title: '<div style="color:red">Confirm!</div>',
            content: 'Are you sure you want to delete permanently?',
            buttons: {
                confirm: function () {
                    delete_file(id);
                },
                cancel: function () {
                    $.alert('Canceled!');
                },

            }
        });
    }



    var delete_file = function (id) {

        $.ajax({
            type: "POST", // Post / Get method
            url: "/document/delete", //Where form data is sent on submission
            dataType: "text", // Data type, HTML, json etc.
            data: { id: id }, //Form variables
            success: function (response) {

                if (response === "success") {
                    $.confirm({
                        title: '<div style="color:green">Success</div>',
                        content: 'File deleted Successfully',
                        buttons: {
                            ok: function () {
                                location.reload(true)
                            },
                        }
                    });
                }

            },
            error: function (xhr, ajaxOptions, thrownError) {
                $.alert('Could not delete');
            }
        });
    }





</script>


<script>
    $('#file-fr').fileinput({
        theme: 'fas',
        language: 'fr',
        uploadUrl: '#',
        allowedFileExtensions: ['jpg', 'png', 'gif']
    });
    $('#file-es').fileinput({
        theme: 'fas',
        language: 'es',
        uploadUrl: '#',
        allowedFileExtensions: ['jpg', 'png', 'gif']
    });
    $("#file-0").fileinput({
        theme: 'fas',
        'allowedFileExtensions': ['jpg', 'png', 'gif']
    });
    $("#file-1").fileinput({
        theme: 'fas',
        uploadUrl: '#', // you must set a valid URL here else you will get an error
        allowedFileExtensions: ['jpg', 'png', 'gif'],
        overwriteInitial: false,
        maxFileSize: 1000,
        maxFilesNum: 10,
        //allowedFileTypes: ['image', 'video', 'flash'],
        slugCallback: function (filename) {
            return filename.replace('(', '_').replace(']', '_');
        }
    });
    /*
     $(".file").on('fileselect', function(event, n, l) {
     alert('File Selected. Name: ' + l + ', Num: ' + n);
     });
     */
    $("#file-3").fileinput({
        theme: 'fas',
        showUpload: false,
        showCaption: false,
        browseClass: "btn btn-primary btn-lg",
        fileType: "any",
        previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
        overwriteInitial: false,
        initialPreviewAsData: true,
        initialPreview: [
            "http://lorempixel.com/1920/1080/transport/1",
            "http://lorempixel.com/1920/1080/transport/2",
            "http://lorempixel.com/1920/1080/transport/3"
        ],
        initialPreviewConfig: [
            { caption: "transport-1.jpg", size: 329892, width: "120px", url: "{$url}", key: 1 },
            { caption: "transport-2.jpg", size: 872378, width: "120px", url: "{$url}", key: 2 },
            { caption: "transport-3.jpg", size: 632762, width: "120px", url: "{$url}", key: 3 }
        ]
    });
    $("#file-4").fileinput({
        theme: 'fas',
        uploadExtraData: { kvId: '10' }
    });
    $(".btn-warning").on('click', function () {
        var $el = $("#file-4");
        if ($el.attr('disabled')) {
            $el.fileinput('enable');
        } else {
            $el.fileinput('disable');
        }
    });
    $(".btn-info").on('click', function () {
        $("#file-4").fileinput('refresh', { previewClass: 'bg-info' });
    });
    /*
     $('#file-4').on('fileselectnone', function() {
     alert('Huh! You selected no files.');
     });
     $('#file-4').on('filebrowse', function() {
     alert('File browse clicked for #file-4');
     });
     */
    $(document).ready(function () {
        $("#test-upload").fileinput({
            'theme': 'fas',
            'showPreview': false,
            'allowedFileExtensions': ['jpg', 'png', 'gif'],
            'elErrorContainer': '#errorBlock'
        });
        $("#kv-explorer").fileinput({
            'theme': 'explorer-fas',
            'uploadUrl': '#',
            overwriteInitial: false,
            initialPreviewAsData: true,
            initialPreview: [
                "http://lorempixel.com/1920/1080/nature/1",
                "http://lorempixel.com/1920/1080/nature/2",
                "http://lorempixel.com/1920/1080/nature/3"
            ],
            initialPreviewConfig: [
                { caption: "nature-1.jpg", size: 329892, width: "120px", url: "{$url}", key: 1 },
                { caption: "nature-2.jpg", size: 872378, width: "120px", url: "{$url}", key: 2 },
                { caption: "nature-3.jpg", size: 632762, width: "120px", url: "{$url}", key: 3 }
            ]
        });
        /*
         $("#test-upload").on('fileloaded', function(event, file, previewId, index) {
         alert('i = ' + index + ', id = ' + previewId + ', file = ' + file.name);
         });
         */
    });
</script>

Zerion Mini Shell 1.0