Plugin Directory

Changeset 3225942


Ignore:
Timestamp:
01/21/2025 06:11:49 AM (14 months ago)
Author:
coder426
Message:

PMS 1.5.2 - bug fixed

Location:
passwords-manager
Files:
131 added
10 edited

Legend:

Unmodified
Added
Removed
  • passwords-manager/trunk/assets/css/pms-front.css

    r3221505 r3225942  
    135135}
    136136
     137#front_pass_table_1_wrapper .row.mt-2:last-child {
     138    display: flex;
     139    flex-direction: row;
     140    justify-content: space-between;
     141    align-items: center;
     142}
     143
     144#front_pass_table_1_wrapper .row.mt-2:last-child .pagination {
     145    margin: 0px;
     146}
     147
     148.share .label {
     149    display: none;
     150}
     151
    137152@media (min-width: 1000px) {
    138153    .pwdms_table_responsive .pagination .next {
  • passwords-manager/trunk/assets/data/dummy.json

    r2745806 r3225942  
    44     "Email": "johnsmith@gmail.com",
    55     "Password": "johnsmith123",
    6      "URL": "www.hirewebxperts.com",
     6     "URL": "https://www.youtube.com/channel/UCgGKPjNNJ_5IReNbJOW530w",
    77     "Category": "Personal",
    88     "Category_color" : "#34568B",
     
    1313     "Email": "MaryWDuke@jourrapide.com",
    1414     "Password": "mary12345",
    15      "URL": "www.plugins.hirewebxperts.com",
     15     "URL": "https://www.youtube.com/@DaoofInspiration",
    1616     "Category": "Business",
    1717     "Category_color" : "#FF6F61",
     
    2222     "Email": "EricWCanterbury@rhyta.com",
    2323     "Password": "eric12345",
    24      "URL": "www.woo.hirewebxperts.com",
     24     "URL": "https://www.youtube.com/@VedicTeachings426",
    2525     "Category": "Social",
    2626     "Category_color" : "#6B5B95",
     
    3131     "Email": "MargaretTFeaster@rhyta.com",
    3232     "Password": "marget@12",
    33      "URL": "www.worklab.hirewebxperts.com",
     33     "URL": "https://www.youtube.com/@wordpressjunction",
    3434     "Category": "WordPress",
    3535     "Category_color" : "#88B04B",
     
    4040     "Email": "KevinRShepherd@rhyta.com",
    4141     "Password": "kevinsummer",
    42      "URL": "www.magikwebservices.com",
     42     "URL": "https://www.youtube.com/@empireclinicsinhindi-3287",
    4343     "Category": "SEO",
    4444     "Category_color" : "#F7CAC9",
     
    4949     "Email": "uDanielEBurke@teleworm.us",
    5050     "Password": "daniel@burke",
    51      "URL": "www.websitedemoforyou.com",
     51     "URL": "https://www.youtube.com/@fakegaming6319",
    5252     "Category": "Designer",
    5353     "Category_color" : "#92A8D1",
     
    5858     "Email": "PeterSChism@jourrapide.com",
    5959     "Password": "daniel@burke",
    60      "URL": "www.peaceyard.com",
     60     "URL": "https://www.youtube.com/@alpha_royal_gaming",
    6161     "Category": "FINANCE",
    6262     "Category_color" : "#955251",
     
    6767    "Email": "PeterSChism123@jourrapide.com",
    6868    "Password": "daniel@burke",
    69     "URL": "www.peaceyard.co.uk",
     69    "URL": "www.twitter.com",
    7070    "Category": "WordPress",
    7171    "Category_color" : "#B565A7",
     
    7676    "Email": "PeterSChism321@jourrapide.com",
    7777    "Password": "daniel@burke",
    78     "URL": "https://therapyworkstogether.com/",
     78    "URL": "www.google.com",
    7979    "Category": "Gmail",
    8080    "Category_color" : "#9B2335",
     
    8585    "Email": "PeterSChism111@jourrapide.com",
    8686    "Password": "daniel@burke",
    87     "URL":"https://donate.cuddlesfoundation.org/",
     87    "URL":"www.facebook.com",
    8888    "Category": "Developer",
    8989    "Category_color" : "#55B4B0",
  • passwords-manager/trunk/assets/js/pms-admin.js

    r3221505 r3225942  
    5959    });
    6060});
     61
     62
     63/*! DataTables Bootstrap 5 integration
     64 * © SpryMedia Ltd - datatables.net/license
     65 */
     66
     67(function (factory) {
     68    if (typeof define === 'function' && define.amd) {
     69        // AMD
     70        define(['jquery', 'datatables.net'], function ($) {
     71            return factory($, window, document);
     72        });
     73    }
     74    else if (typeof exports === 'object') {
     75        // CommonJS
     76        var jq = require('jquery');
     77        var cjsRequires = function (root, $) {
     78            if (!$.fn.dataTable) {
     79                require('datatables.net')(root, $);
     80            }
     81        };
     82
     83        if (typeof window === 'undefined') {
     84            module.exports = function (root, $) {
     85                if (!root) {
     86                    // CommonJS environments without a window global must pass a
     87                    // root. This will give an error otherwise
     88                    root = window;
     89                }
     90
     91                if (!$) {
     92                    $ = jq(root);
     93                }
     94
     95                cjsRequires(root, $);
     96                return factory($, root, root.document);
     97            };
     98        }
     99        else {
     100            cjsRequires(window, jq);
     101            module.exports = factory(jq, window, window.document);
     102        }
     103    }
     104    else {
     105        // Browser
     106        factory(jQuery, window, document);
     107    }
     108}(function ($, window, document) {
     109    'use strict';
     110    var DataTable = $.fn.dataTable;
     111
     112
     113
     114    /**
     115     * DataTables integration for Bootstrap 5.
     116     *
     117     * This file sets the defaults and adds options to DataTables to style its
     118     * controls using Bootstrap. See https://datatables.net/manual/styling/bootstrap
     119     * for further information.
     120     */
     121
     122    /* Set the defaults for DataTables initialisation */
     123    $.extend(true, DataTable.defaults, {
     124        renderer: 'bootstrap'
     125    });
     126
     127
     128    /* Default class modification */
     129    $.extend(true, DataTable.ext.classes, {
     130        container: "dt-container dt-bootstrap5",
     131        search: {
     132            input: "form-control form-control-sm"
     133        },
     134        length: {
     135            select: "form-select form-select-sm"
     136        },
     137        processing: {
     138            container: "dt-processing card"
     139        },
     140        layout: {
     141            row: 'row mt-2 justify-content-between',
     142            cell: 'd-md-flex justify-content-between align-items-center',
     143            tableCell: 'col-12',
     144            start: 'dt-layout-start col-md-auto me-auto',
     145            end: 'dt-layout-end col-md-auto ms-auto',
     146            full: 'dt-layout-full col-md'
     147        }
     148    });
     149
     150
     151    /* Bootstrap paging button renderer */
     152    DataTable.ext.renderer.pagingButton.bootstrap = function (settings, buttonType, content, active, disabled) {
     153        var btnClasses = ['dt-paging-button', 'page-item'];
     154
     155        if (active) {
     156            btnClasses.push('active');
     157        }
     158
     159        if (disabled) {
     160            btnClasses.push('disabled')
     161        }
     162
     163        var li = $('<li>').addClass(btnClasses.join(' '));
     164        var a = $('<button>', {
     165            'class': 'page-link',
     166            role: 'link',
     167            type: 'button'
     168        })
     169            .html(content)
     170            .appendTo(li);
     171
     172        return {
     173            display: li,
     174            clicker: a
     175        };
     176    };
     177
     178    DataTable.ext.renderer.pagingContainer.bootstrap = function (settings, buttonEls) {
     179        return $('<ul/>').addClass('pagination').append(buttonEls);
     180    };
     181
     182
     183    return DataTable;
     184}));
  • passwords-manager/trunk/assets/js/pms-front.js

    r3221505 r3225942  
    8484    }
    8585});
     86
     87
     88
     89
     90/*! DataTables Bootstrap 5 integration
     91 * © SpryMedia Ltd - datatables.net/license
     92 */
     93
     94(function (factory) {
     95    if (typeof define === 'function' && define.amd) {
     96        // AMD
     97        define(['jquery', 'datatables.net'], function ($) {
     98            return factory($, window, document);
     99        });
     100    }
     101    else if (typeof exports === 'object') {
     102        // CommonJS
     103        var jq = require('jquery');
     104        var cjsRequires = function (root, $) {
     105            if (!$.fn.dataTable) {
     106                require('datatables.net')(root, $);
     107            }
     108        };
     109
     110        if (typeof window === 'undefined') {
     111            module.exports = function (root, $) {
     112                if (!root) {
     113                    // CommonJS environments without a window global must pass a
     114                    // root. This will give an error otherwise
     115                    root = window;
     116                }
     117
     118                if (!$) {
     119                    $ = jq(root);
     120                }
     121
     122                cjsRequires(root, $);
     123                return factory($, root, root.document);
     124            };
     125        }
     126        else {
     127            cjsRequires(window, jq);
     128            module.exports = factory(jq, window, window.document);
     129        }
     130    }
     131    else {
     132        // Browser
     133        factory(jQuery, window, document);
     134    }
     135}(function ($, window, document) {
     136    'use strict';
     137    var DataTable = $.fn.dataTable;
     138
     139
     140
     141    /**
     142     * DataTables integration for Bootstrap 5.
     143     *
     144     * This file sets the defaults and adds options to DataTables to style its
     145     * controls using Bootstrap. See https://datatables.net/manual/styling/bootstrap
     146     * for further information.
     147     */
     148
     149    /* Set the defaults for DataTables initialisation */
     150    $.extend(true, DataTable.defaults, {
     151        renderer: 'bootstrap'
     152    });
     153
     154
     155    /* Default class modification */
     156    $.extend(true, DataTable.ext.classes, {
     157        container: "dt-container dt-bootstrap5",
     158        search: {
     159            input: "form-control form-control-sm"
     160        },
     161        length: {
     162            select: "form-select form-select-sm"
     163        },
     164        processing: {
     165            container: "dt-processing card"
     166        },
     167        layout: {
     168            row: 'row mt-2 justify-content-between',
     169            cell: 'd-md-flex justify-content-between align-items-center',
     170            tableCell: 'col-12',
     171            start: 'dt-layout-start col-md-auto me-auto',
     172            end: 'dt-layout-end col-md-auto ms-auto',
     173            full: 'dt-layout-full col-md'
     174        }
     175    });
     176
     177
     178    /* Bootstrap paging button renderer */
     179    DataTable.ext.renderer.pagingButton.bootstrap = function (settings, buttonType, content, active, disabled) {
     180        var btnClasses = ['dt-paging-button', 'page-item'];
     181
     182        if (active) {
     183            btnClasses.push('active');
     184        }
     185
     186        if (disabled) {
     187            btnClasses.push('disabled')
     188        }
     189
     190        var li = $('<li>').addClass(btnClasses.join(' '));
     191        var a = $('<button>', {
     192            'class': 'page-link',
     193            role: 'link',
     194            type: 'button'
     195        })
     196            .html(content)
     197            .appendTo(li);
     198
     199        return {
     200            display: li,
     201            clicker: a
     202        };
     203    };
     204
     205    DataTable.ext.renderer.pagingContainer.bootstrap = function (settings, buttonEls) {
     206        return $('<ul/>').addClass('pagination').append(buttonEls);
     207    };
     208
     209
     210    return DataTable;
     211}));
  • passwords-manager/trunk/assets/js/pms-settings.js

    r3221505 r3225942  
    200200    // Import dummy data
    201201    jQuery("#importdummy").click(function () {
     202
     203        var prevElement = jQuery(this).prev();
     204        if (!prevElement.length || !prevElement.val().trim()) {
     205            Swal.fire({
     206                title: "Error",
     207                text: "Please enter a Password Encryption Key before importing dummy data.",
     208                icon: "error",
     209            });
     210            return;
     211        }
    202212        var security_nonce = MyAjax.security_nonce;
    203213        jQuery('#wcbnl_overlay').show();
  • passwords-manager/trunk/assets/libs/datatable/rowReorder.dataTables.min.css

    r3221505 r3225942  
    11div.dt-rowReorder-float-parent{table-layout:fixed;outline:2px solid rgb(10, 89, 203);z-index:2001;position:absolute !important;overflow:hidden;border-radius:3px}div.dt-rowReorder-float-parent table.dt-rowReorder-float{opacity:.9;background-color:white;margin:0 !important}div.dt-rowReorder-float-parent.drop-not-allowed{cursor:not-allowed}tr.dt-rowReorder-moving{outline:2px solid #888;outline-offset:-2px}body.dt-rowReorder-noOverflow{overflow-x:hidden}table.dataTable td.reorder{text-align:center;cursor:move}html.dark div.dt-rowReorder-float-parent{outline-color:rgb(110, 168, 254)}html.dark div.dt-rowReorder-float-parent table.dt-rowReorder-float{background-color:var(--dt-html-background)}html.dark tr.dt-rowReorder-moving{outline-color:#aaa}
     2@charset "UTF-8";
     3:root {
     4  --dt-row-selected: 13, 110, 253;
     5  --dt-row-selected-text: 255, 255, 255;
     6  --dt-row-selected-link: 9, 10, 11;
     7  --dt-row-stripe: 0, 0, 0;
     8  --dt-row-hover: 0, 0, 0;
     9  --dt-column-ordering: 0, 0, 0;
     10  --dt-html-background: white;
     11}
     12:root.dark {
     13  --dt-html-background: rgb(33, 37, 41);
     14}
     15
     16table.dataTable td.dt-control {
     17  text-align: center;
     18  cursor: pointer;
     19}
     20table.dataTable td.dt-control:before {
     21  display: inline-block;
     22  box-sizing: border-box;
     23  content: "";
     24  border-top: 5px solid transparent;
     25  border-left: 10px solid rgba(0, 0, 0, 0.5);
     26  border-bottom: 5px solid transparent;
     27  border-right: 0px solid transparent;
     28}
     29table.dataTable tr.dt-hasChild td.dt-control:before {
     30  border-top: 10px solid rgba(0, 0, 0, 0.5);
     31  border-left: 5px solid transparent;
     32  border-bottom: 0px solid transparent;
     33  border-right: 5px solid transparent;
     34}
     35table.dataTable tfoot:empty {
     36  display: none;
     37}
     38
     39html.dark table.dataTable td.dt-control:before,
     40:root[data-bs-theme=dark] table.dataTable td.dt-control:before,
     41:root[data-theme=dark] table.dataTable td.dt-control:before {
     42  border-left-color: rgba(255, 255, 255, 0.5);
     43}
     44html.dark table.dataTable tr.dt-hasChild td.dt-control:before,
     45:root[data-bs-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before,
     46:root[data-theme=dark] table.dataTable tr.dt-hasChild td.dt-control:before {
     47  border-top-color: rgba(255, 255, 255, 0.5);
     48  border-left-color: transparent;
     49}
     50
     51div.dt-scroll {
     52  width: 100%;
     53}
     54
     55div.dt-scroll-body thead tr,
     56div.dt-scroll-body tfoot tr {
     57  height: 0;
     58}
     59div.dt-scroll-body thead tr th, div.dt-scroll-body thead tr td,
     60div.dt-scroll-body tfoot tr th,
     61div.dt-scroll-body tfoot tr td {
     62  height: 0 !important;
     63  padding-top: 0px !important;
     64  padding-bottom: 0px !important;
     65  border-top-width: 0px !important;
     66  border-bottom-width: 0px !important;
     67}
     68div.dt-scroll-body thead tr th div.dt-scroll-sizing, div.dt-scroll-body thead tr td div.dt-scroll-sizing,
     69div.dt-scroll-body tfoot tr th div.dt-scroll-sizing,
     70div.dt-scroll-body tfoot tr td div.dt-scroll-sizing {
     71  height: 0 !important;
     72  overflow: hidden !important;
     73}
     74
     75table.dataTable thead > tr > th:active,
     76table.dataTable thead > tr > td:active {
     77  outline: none;
     78}
     79table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before,
     80table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
     81table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before {
     82  position: absolute;
     83  display: block;
     84  bottom: 50%;
     85  content: "▲";
     86  content: "▲"/"";
     87}
     88table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
     89table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
     90table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
     91  position: absolute;
     92  display: block;
     93  top: 50%;
     94  content: "▼";
     95  content: "▼"/"";
     96}
     97table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc, table.dataTable thead > tr > th.dt-ordering-asc, table.dataTable thead > tr > th.dt-ordering-desc,
     98table.dataTable thead > tr > td.dt-orderable-asc,
     99table.dataTable thead > tr > td.dt-orderable-desc,
     100table.dataTable thead > tr > td.dt-ordering-asc,
     101table.dataTable thead > tr > td.dt-ordering-desc {
     102  position: relative;
     103  padding-right: 30px;
     104}
     105table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order,
     106table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order,
     107table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order,
     108table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order,
     109table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order {
     110  position: absolute;
     111  right: 12px;
     112  top: 0;
     113  bottom: 0;
     114  width: 12px;
     115}
     116table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-orderable-desc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:after, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
     117table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:before,
     118table.dataTable thead > tr > td.dt-orderable-asc span.dt-column-order:after,
     119table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:before,
     120table.dataTable thead > tr > td.dt-orderable-desc span.dt-column-order:after,
     121table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
     122table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:after,
     123table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:before,
     124table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
     125  left: 0;
     126  opacity: 0.125;
     127  line-height: 9px;
     128  font-size: 0.8em;
     129}
     130table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc,
     131table.dataTable thead > tr > td.dt-orderable-asc,
     132table.dataTable thead > tr > td.dt-orderable-desc {
     133  cursor: pointer;
     134}
     135table.dataTable thead > tr > th.dt-orderable-asc:hover, table.dataTable thead > tr > th.dt-orderable-desc:hover,
     136table.dataTable thead > tr > td.dt-orderable-asc:hover,
     137table.dataTable thead > tr > td.dt-orderable-desc:hover {
     138  outline: 2px solid rgba(0, 0, 0, 0.05);
     139  outline-offset: -2px;
     140}
     141table.dataTable thead > tr > th.dt-ordering-asc span.dt-column-order:before, table.dataTable thead > tr > th.dt-ordering-desc span.dt-column-order:after,
     142table.dataTable thead > tr > td.dt-ordering-asc span.dt-column-order:before,
     143table.dataTable thead > tr > td.dt-ordering-desc span.dt-column-order:after {
     144  opacity: 0.6;
     145}
     146table.dataTable thead > tr > th.sorting_desc_disabled span.dt-column-order:after, table.dataTable thead > tr > th.sorting_asc_disabled span.dt-column-order:before,
     147table.dataTable thead > tr > td.sorting_desc_disabled span.dt-column-order:after,
     148table.dataTable thead > tr > td.sorting_asc_disabled span.dt-column-order:before {
     149  display: none;
     150}
     151table.dataTable thead > tr > th:active,
     152table.dataTable thead > tr > td:active {
     153  outline: none;
     154}
     155
     156div.dt-scroll-body > table.dataTable > thead > tr > th,
     157div.dt-scroll-body > table.dataTable > thead > tr > td {
     158  overflow: hidden;
     159}
     160
     161:root.dark table.dataTable thead > tr > th.dt-orderable-asc:hover, :root.dark table.dataTable thead > tr > th.dt-orderable-desc:hover,
     162:root.dark table.dataTable thead > tr > td.dt-orderable-asc:hover,
     163:root.dark table.dataTable thead > tr > td.dt-orderable-desc:hover,
     164:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-asc:hover,
     165:root[data-bs-theme=dark] table.dataTable thead > tr > th.dt-orderable-desc:hover,
     166:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-asc:hover,
     167:root[data-bs-theme=dark] table.dataTable thead > tr > td.dt-orderable-desc:hover {
     168  outline: 2px solid rgba(255, 255, 255, 0.05);
     169}
     170
     171div.dt-processing {
     172  position: absolute;
     173  top: 50%;
     174  left: 50%;
     175  width: 200px;
     176  margin-left: -100px;
     177  margin-top: -22px;
     178  text-align: center;
     179  padding: 2px;
     180  z-index: 10;
     181}
     182div.dt-processing > div:last-child {
     183  position: relative;
     184  width: 80px;
     185  height: 15px;
     186  margin: 1em auto;
     187}
     188div.dt-processing > div:last-child > div {
     189  position: absolute;
     190  top: 0;
     191  width: 13px;
     192  height: 13px;
     193  border-radius: 50%;
     194  background: rgb(13, 110, 253);
     195  background: rgb(var(--dt-row-selected));
     196  animation-timing-function: cubic-bezier(0, 1, 1, 0);
     197}
     198div.dt-processing > div:last-child > div:nth-child(1) {
     199  left: 8px;
     200  animation: datatables-loader-1 0.6s infinite;
     201}
     202div.dt-processing > div:last-child > div:nth-child(2) {
     203  left: 8px;
     204  animation: datatables-loader-2 0.6s infinite;
     205}
     206div.dt-processing > div:last-child > div:nth-child(3) {
     207  left: 32px;
     208  animation: datatables-loader-2 0.6s infinite;
     209}
     210div.dt-processing > div:last-child > div:nth-child(4) {
     211  left: 56px;
     212  animation: datatables-loader-3 0.6s infinite;
     213}
     214
     215@keyframes datatables-loader-1 {
     216  0% {
     217    transform: scale(0);
     218  }
     219  100% {
     220    transform: scale(1);
     221  }
     222}
     223@keyframes datatables-loader-3 {
     224  0% {
     225    transform: scale(1);
     226  }
     227  100% {
     228    transform: scale(0);
     229  }
     230}
     231@keyframes datatables-loader-2 {
     232  0% {
     233    transform: translate(0, 0);
     234  }
     235  100% {
     236    transform: translate(24px, 0);
     237  }
     238}
     239table.dataTable.nowrap th, table.dataTable.nowrap td {
     240  white-space: nowrap;
     241}
     242table.dataTable th,
     243table.dataTable td {
     244  box-sizing: border-box;
     245}
     246table.dataTable th.dt-type-numeric, table.dataTable th.dt-type-date,
     247table.dataTable td.dt-type-numeric,
     248table.dataTable td.dt-type-date {
     249  text-align: right;
     250}
     251table.dataTable th.dt-left,
     252table.dataTable td.dt-left {
     253  text-align: left;
     254}
     255table.dataTable th.dt-center,
     256table.dataTable td.dt-center {
     257  text-align: center;
     258}
     259table.dataTable th.dt-right,
     260table.dataTable td.dt-right {
     261  text-align: right;
     262}
     263table.dataTable th.dt-justify,
     264table.dataTable td.dt-justify {
     265  text-align: justify;
     266}
     267table.dataTable th.dt-nowrap,
     268table.dataTable td.dt-nowrap {
     269  white-space: nowrap;
     270}
     271table.dataTable th.dt-empty,
     272table.dataTable td.dt-empty {
     273  text-align: center;
     274  vertical-align: top;
     275}
     276table.dataTable thead th,
     277table.dataTable thead td,
     278table.dataTable tfoot th,
     279table.dataTable tfoot td {
     280  text-align: left;
     281}
     282table.dataTable thead th.dt-head-left,
     283table.dataTable thead td.dt-head-left,
     284table.dataTable tfoot th.dt-head-left,
     285table.dataTable tfoot td.dt-head-left {
     286  text-align: left;
     287}
     288table.dataTable thead th.dt-head-center,
     289table.dataTable thead td.dt-head-center,
     290table.dataTable tfoot th.dt-head-center,
     291table.dataTable tfoot td.dt-head-center {
     292  text-align: center;
     293}
     294table.dataTable thead th.dt-head-right,
     295table.dataTable thead td.dt-head-right,
     296table.dataTable tfoot th.dt-head-right,
     297table.dataTable tfoot td.dt-head-right {
     298  text-align: right;
     299}
     300table.dataTable thead th.dt-head-justify,
     301table.dataTable thead td.dt-head-justify,
     302table.dataTable tfoot th.dt-head-justify,
     303table.dataTable tfoot td.dt-head-justify {
     304  text-align: justify;
     305}
     306table.dataTable thead th.dt-head-nowrap,
     307table.dataTable thead td.dt-head-nowrap,
     308table.dataTable tfoot th.dt-head-nowrap,
     309table.dataTable tfoot td.dt-head-nowrap {
     310  white-space: nowrap;
     311}
     312table.dataTable tbody th.dt-body-left,
     313table.dataTable tbody td.dt-body-left {
     314  text-align: left;
     315}
     316table.dataTable tbody th.dt-body-center,
     317table.dataTable tbody td.dt-body-center {
     318  text-align: center;
     319}
     320table.dataTable tbody th.dt-body-right,
     321table.dataTable tbody td.dt-body-right {
     322  text-align: right;
     323}
     324table.dataTable tbody th.dt-body-justify,
     325table.dataTable tbody td.dt-body-justify {
     326  text-align: justify;
     327}
     328table.dataTable tbody th.dt-body-nowrap,
     329table.dataTable tbody td.dt-body-nowrap {
     330  white-space: nowrap;
     331}
     332
     333/*! Bootstrap 5 integration for DataTables
     334 *
     335 * ©2020 SpryMedia Ltd, all rights reserved.
     336 * License: MIT datatables.net/license/mit
     337 */
     338table.table.dataTable {
     339  clear: both;
     340  margin-bottom: 0;
     341  max-width: none;
     342  border-spacing: 0;
     343}
     344table.table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1) > * {
     345  box-shadow: none;
     346}
     347table.table.dataTable > :not(caption) > * > * {
     348  background-color: var(--bs-table-bg);
     349}
     350table.table.dataTable > tbody > tr {
     351  background-color: transparent;
     352}
     353table.table.dataTable > tbody > tr.selected > * {
     354  box-shadow: inset 0 0 0 9999px rgb(13, 110, 253);
     355  box-shadow: inset 0 0 0 9999px rgb(var(--dt-row-selected));
     356  color: rgb(255, 255, 255);
     357  color: rgb(var(--dt-row-selected-text));
     358}
     359table.table.dataTable > tbody > tr.selected a {
     360  color: rgb(9, 10, 11);
     361  color: rgb(var(--dt-row-selected-link));
     362}
     363table.table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1) > * {
     364  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-stripe), 0.05);
     365}
     366table.table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1).selected > * {
     367  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.95);
     368  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.95);
     369}
     370table.table.dataTable.table-hover > tbody > tr:hover > * {
     371  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-hover), 0.075);
     372}
     373table.table.dataTable.table-hover > tbody > tr.selected:hover > * {
     374  box-shadow: inset 0 0 0 9999px rgba(13, 110, 253, 0.975);
     375  box-shadow: inset 0 0 0 9999px rgba(var(--dt-row-selected), 0.975);
     376}
     377
     378div.dt-container div.dt-layout-start > *:not(:last-child) {
     379  margin-right: 1em;
     380}
     381div.dt-container div.dt-layout-end > *:not(:first-child) {
     382  margin-left: 1em;
     383}
     384div.dt-container div.dt-layout-full {
     385  width: 100%;
     386}
     387div.dt-container div.dt-layout-full > *:only-child {
     388  margin-left: auto;
     389  margin-right: auto;
     390}
     391div.dt-container div.dt-layout-table > div {
     392  display: block !important;
     393}
     394
     395@media screen and (max-width: 767px) {
     396  div.dt-container div.dt-layout-start > *:not(:last-child) {
     397    margin-right: 0;
     398  }
     399  div.dt-container div.dt-layout-end > *:not(:first-child) {
     400    margin-left: 0;
     401  }
     402}
     403div.dt-container div.dt-length label {
     404  font-weight: normal;
     405  text-align: left;
     406  white-space: nowrap;
     407}
     408div.dt-container div.dt-length select {
     409  width: auto;
     410  display: inline-block;
     411  margin-right: 0.5em;
     412}
     413div.dt-container div.dt-search {
     414  text-align: right;
     415}
     416div.dt-container div.dt-search label {
     417  font-weight: normal;
     418  white-space: nowrap;
     419  text-align: left;
     420}
     421div.dt-container div.dt-search input {
     422  margin-left: 0.5em;
     423  display: inline-block;
     424  width: auto;
     425}
     426div.dt-container div.dt-paging {
     427  margin: 0;
     428}
     429div.dt-container div.dt-paging ul.pagination {
     430  margin: 2px 0;
     431  flex-wrap: wrap;
     432}
     433div.dt-container div.dt-row {
     434  position: relative;
     435}
     436
     437div.dt-scroll-head table.dataTable {
     438  margin-bottom: 0 !important;
     439}
     440
     441div.dt-scroll-body {
     442  border-bottom-color: var(--bs-border-color);
     443  border-bottom-width: var(--bs-border-width);
     444  border-bottom-style: solid;
     445}
     446div.dt-scroll-body > table {
     447  border-top: none;
     448  margin-top: 0 !important;
     449  margin-bottom: 0 !important;
     450}
     451div.dt-scroll-body > table > tbody > tr:first-child {
     452  border-top-width: 0;
     453}
     454div.dt-scroll-body > table > thead > tr {
     455  border-width: 0 !important;
     456}
     457div.dt-scroll-body > table > tbody > tr:last-child > * {
     458  border-bottom: none;
     459}
     460
     461div.dt-scroll-foot > .dt-scroll-footInner {
     462  box-sizing: content-box;
     463}
     464div.dt-scroll-foot > .dt-scroll-footInner > table {
     465  margin-top: 0 !important;
     466  border-top: none;
     467}
     468div.dt-scroll-foot > .dt-scroll-footInner > table > tfoot > tr:first-child {
     469  border-top-width: 0 !important;
     470}
     471
     472@media screen and (max-width: 767px) {
     473  div.dt-container div.dt-length,
     474  div.dt-container div.dt-search,
     475  div.dt-container div.dt-info,
     476  div.dt-container div.dt-paging {
     477    text-align: center;
     478  }
     479  div.dt-container .row {
     480    --bs-gutter-y: 0.5rem;
     481  }
     482  div.dt-container div.dt-paging ul.pagination {
     483    justify-content: center !important;
     484  }
     485}
     486table.dataTable.table-sm > thead > tr th.dt-orderable-asc, table.dataTable.table-sm > thead > tr th.dt-orderable-desc, table.dataTable.table-sm > thead > tr th.dt-ordering-asc, table.dataTable.table-sm > thead > tr th.dt-ordering-desc,
     487table.dataTable.table-sm > thead > tr td.dt-orderable-asc,
     488table.dataTable.table-sm > thead > tr td.dt-orderable-desc,
     489table.dataTable.table-sm > thead > tr td.dt-ordering-asc,
     490table.dataTable.table-sm > thead > tr td.dt-ordering-desc {
     491  padding-right: 20px;
     492}
     493table.dataTable.table-sm > thead > tr th.dt-orderable-asc span.dt-column-order, table.dataTable.table-sm > thead > tr th.dt-orderable-desc span.dt-column-order, table.dataTable.table-sm > thead > tr th.dt-ordering-asc span.dt-column-order, table.dataTable.table-sm > thead > tr th.dt-ordering-desc span.dt-column-order,
     494table.dataTable.table-sm > thead > tr td.dt-orderable-asc span.dt-column-order,
     495table.dataTable.table-sm > thead > tr td.dt-orderable-desc span.dt-column-order,
     496table.dataTable.table-sm > thead > tr td.dt-ordering-asc span.dt-column-order,
     497table.dataTable.table-sm > thead > tr td.dt-ordering-desc span.dt-column-order {
     498  right: 5px;
     499}
     500
     501div.dt-scroll-head table.table-bordered {
     502  border-bottom-width: 0;
     503}
     504
     505div.table-responsive > div.dt-container > div.row {
     506  margin: 0;
     507}
     508div.table-responsive > div.dt-container > div.row > div[class^=col-]:first-child {
     509  padding-left: 0;
     510}
     511div.table-responsive > div.dt-container > div.row > div[class^=col-]:last-child {
     512  padding-right: 0;
     513}
     514
     515:root[data-bs-theme=dark] {
     516  --dt-row-hover: 255, 255, 255;
     517  --dt-row-stripe: 255, 255, 255;
     518  --dt-column-ordering: 255, 255, 255;
     519}
     520
     521div.dt-container .dt-paging .dt-paging-button{
     522  padding: 0px;
     523}
  • passwords-manager/trunk/include/admin-page/addon/csv-import/pms-csv-import-setting-page/pms_import_html.php

    r3221505 r3225942  
    4141                <div class="card-header"><?php echo __('Dummy Data Import', 'passwords-manager'); ?></div>
    4242                <div class="card-body">
     43                    <?php $encry_key = get_option('pms_encrypt_key'); ?>
     44                    <input type="hidden" name="setting_key_hdn" id="setting_key_hdn" value="<?php echo esc_html($encry_key); ?>">
    4345                    <button type="button" class="btn btn-info" id="importdummy"><?php echo __('Import Data', 'passwords-manager'); ?></button>
    4446                </div>
  • passwords-manager/trunk/include/pms-passwords-ajax-action.php

    r3221505 r3225942  
    3535                    $get_cate = $wpdb->get_var($wpdb->prepare("SELECT id FROM {$prefix}pms_category WHERE category LIKE %s", '%' . $wpdb->esc_like($category_name) . '%'));
    3636                    $get_cate = absint($get_cate);
    37                     $pass_rec = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$prefix}pms_passwords WHERE category_id = %d LIMIT 0, 10", $get_cate));
     37                    $pass_rec = $wpdb->get_results($wpdb->prepare("SELECT * FROM {$prefix}pms_passwords WHERE category_id = %d LIMIT 0, 10", $get_cate));   
     38                    $pass_c =   count($pass_rec);
    3839                } else {
    3940                    $query = "SELECT * FROM {$prefix}pms_passwords";
    4041                    $pass_rec = $wpdb->get_results($wpdb->prepare($query));
    41 
     42                    $pass_c =   count($pass_rec);
    4243                    // Sanitize search value
    4344                    $searchVal = isset($_POST['search']['value']) ? sanitize_text_field($_POST['search']['value']) : '';
     
    6061                        $pass_rec = $wpdb->get_results($wpdb->prepare($query));
    6162                    }
     63                   
    6264                }
    6365
    6466                $data = array();
    6567                $rowCount = $startLimit;
    66 
    6768                foreach ($pass_rec as $row) {
    6869                    $rowCount++;
     
    106107                // Prepare and output response
    107108                $output = array(
    108                     "recordsTotal" => count($pass_rec),
    109                     "recordsFiltered" => count($pass_rec),
     109                    "recordsTotal" => filter_var($pass_c, FILTER_VALIDATE_INT),
     110                    "recordsFiltered" => filter_var($pass_c, FILTER_VALIDATE_INT),
    110111                    "data" => $data
    111112                );
  • passwords-manager/trunk/passwords-manager.php

    r3221505 r3225942  
    55 * Plugin URI: https://plugins.hirewebxperts.com/passwords-manager/
    66 * Description: Passwords Manager lets you store all your passwords in one place.
    7  * Version: 1.5.1
     7 * Version: 1.5.2
    88 * Requires at least: 6.3
    99 * Requires PHP: 7.4
  • passwords-manager/trunk/readme.txt

    r3221505 r3225942  
    44Requires at least: 6.3.2 or higher
    55Tested up to: 6.7.1
    6 Stable tag: 1.5.1
     6Stable tag: 1.5.2
    77License: GPLv2 or later
    88License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    1717[youtube https://www.youtube.com/watch?v=B9NvLynWueU]
    1818
    19 = New Features of Passwords Manager 1.5.1 includes: =
     19= New Features of Passwords Manager 1.5.2 includes: =
    2020* Category Color field for each category name.
    2121* Clone the existing Password Record in the Passwords section.
     
    4646The plugin is simple to install:
    4747
    48  * Download passwords-manager.1.5.1.zip
     48 * Download passwords-manager.1.5.2.zip
    4949 * Unzip
    5050 * Upload pwds-manager directory to your /wp-content/plugins directory
     
    7676
    7777== Changelog ==
     78
     79= 1.5.2 =
     80* 20/01/2025
     81- Security issues updated.
     82- Bug Fixed
     83- Improved UI
    7884
    7985= 1.5.1 =
Note: See TracChangeset for help on using the changeset viewer.