Changeset 2386617
- Timestamp:
- 09/22/2020 07:59:08 PM (6 years ago)
- Location:
- dd-roles
- Files:
-
- 16 edited
- 1 copied
-
tags/3.2 (copied) (copied from dd-roles/trunk)
-
tags/3.2/css/style.css (modified) (1 diff)
-
tags/3.2/dd_roles.php (modified) (12 diffs)
-
tags/3.2/js/default.js (modified) (2 diffs)
-
tags/3.2/js/default.min.js (modified) (1 diff)
-
tags/3.2/readme.txt (modified) (2 diffs)
-
tags/3.2/views/settingPage.php (modified) (1 diff)
-
tags/3.2/views/widgets/manage_capabilities.php (modified) (2 diffs)
-
tags/3.2/views/widgets/migrate_users.php (modified) (4 diffs)
-
trunk/css/style.css (modified) (1 diff)
-
trunk/dd_roles.php (modified) (12 diffs)
-
trunk/js/default.js (modified) (2 diffs)
-
trunk/js/default.min.js (modified) (1 diff)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/views/settingPage.php (modified) (1 diff)
-
trunk/views/widgets/manage_capabilities.php (modified) (2 diffs)
-
trunk/views/widgets/migrate_users.php (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
dd-roles/tags/3.2/css/style.css
r2174294 r2386617 1 @-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#ffffff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#ffffff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}@font-face{font-family:'custom_dashicons';src:url("../fonts/custom_dashicons.eot?7k7b29");src:url("../fonts/custom_dashicons.eot?#iefix7k7b29") format("embedded-opentype"),url("../fonts/custom_dashicons.woff?7k7b29") format("woff"),url("../fonts/custom_dashicons.ttf?7k7b29") format("truetype"),url("../fonts/custom_dashicons.svg?7k7b29#custom_dashicons") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:'dd-roles';src:url("../fonts/dd-roles.eot?fbm1d7");src:url("../fonts/dd-roles.eot?#iefixfbm1d7") format("embedded-opentype"),url("../fonts/dd-roles.woff?fbm1d7") format("woff"),url("../fonts/dd-roles.ttf?fbm1d7") format("truetype"),url("../fonts/dd-roles.svg?fbm1d7#dd-roles") format("svg");font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{font-family:'dd-roles';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[class^="icon-"],[class*=" icon-"]{font-family:'custom_dashicons';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-logobrand:before{content:"\e604"}.icon-logo:before{content:"\e605"}.icon-brand:before{content:"\e606"}.icon-rss:before{content:"\e600"}.icon-linkedin:before{content:"\e601"}.icon-facebook:before{content:"\e603"}.icon-googleplus:before{content:"\e607"}.icon-twitter:before{content:"\e608"}.icon-list:before{content:"\e602"}.icon-search:before{content:"\e609"}.icon-uniE60A:before{content:"\e60a"}.icon-arrow-up:before{content:"\e60b"}.icon-arrow-down:before{content:"\e60c"}.icon-arrow-left:before{content:"\e60d"}.icon-arrow-right:before{content:"\e60e"}.icon-arrow-up2:before{content:"\e60f"}.icon-arrow-down2:before{content:"\e610"}.icon-arrow-left2:before{content:"\e611"}.icon-arrow-right2:before{content:"\e612"}.icon-arrow-up3:before{content:"\e613"}.icon-arrow-down3:before{content:"\e614"}.icon-arrow-left3:before{content:"\e615"}.icon-publish:before{content:"\e616"}.icon-rocket:before{content:"\e617"}.icon-wordpress:before{content:"\e618"}.icon-powercord:before{content:"\e619"}.defaultRole{background-color:#ececec}.defaultRole.alternate{background-color:#ddd}.defaultRole.role-banned .row-title{color:#d54e21}.capabilitiesBlock input[type="checkbox"]{margin-right:10px}.capabilitiesBlock input[type="checkbox"].disabled{cursor:default}.defaultCaps,.otherCaps{background:#fcfcfc;padding:12px;margin:12px auto;-webkit-border-radius:3px;border-radius:3px}.defaultCaps h4,.otherCaps h4{margin-top:0}.defaultCaps ul,.otherCaps ul{float:none;display:inline-block;width:100%}.defaultCaps ul li,.otherCaps ul li{width:25%;float:left}.customCap{background:#ececec;padding:12px;-webkit-border-radius:3px;border-radius:3px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.migrate_to{text-align:center}.capLabel{position:relative}.capLabel.disabled{cursor:default}.capLabel .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}.capLabel.loading input{visibility:hidden}.capLabel.loading .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}#poststuff #submitdiv .inside,#poststuff #cleanUpdiv .inside,#poststuff #migratediv .inside,#poststuff #donate .inside{padding:0;margin:0}.dd-sidebar .postbox .hndle{cursor:default}#donate h3:before{font-family:'custom_dashicons';content:"\e605";float:left;margin:1px 3px 0 0}#donate .inside{display:block}.table-roles{display:table}.table-roles .table-roles-head{display:table-header-group}.table-roles .table-roles-footer{display:table-footer-group}.column-role{width:50%}.column-percentBar{width:24%}.column-users{width:10%}.wp-list-table #the-list tr.roleRow td{display:table-cell}.submitCapability h4,.cleanupCap h4{margin:5px 0}.submitCapability i,.cleanupCap i{margin-bottom:10px;display:block;font-size:0.9em}.submitCapability #major-publishing-actions,.cleanupCap #major-publishing-actions{background:none;border-top:none}.wp-core-ui .cleanupCap .button-primary{background:#d54e21;border-color:#b5411b #9c3a19 #9c3a19;box-shadow:0 1px 0 #9c3a19;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #9c3a19, 1px 0 1px #9c3a19, 0 1px 1px #9c3a19, -1px 0 1px #9c3a19}.wp-core-ui .cleanupCap .button-primary:hover{background:#e45c2f;border-color:#d54e21}#migratediv form{margin-bottom:0} 2 /*# sourceMappingURL=style.css.map */ 1 @-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:16px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:10px;line-height:16px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress{overflow:hidden;height:16px;margin:3px 0 0;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:16px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}@font-face{font-family:"custom_dashicons";src:url("../fonts/custom_dashicons.eot?7k7b29");src:url("../fonts/custom_dashicons.eot?#iefix7k7b29") format("embedded-opentype"),url("../fonts/custom_dashicons.woff?7k7b29") format("woff"),url("../fonts/custom_dashicons.ttf?7k7b29") format("truetype"),url("../fonts/custom_dashicons.svg?7k7b29#custom_dashicons") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:"dd-roles";src:url("../fonts/dd-roles.eot?fbm1d7");src:url("../fonts/dd-roles.eot?#iefixfbm1d7") format("embedded-opentype"),url("../fonts/dd-roles.woff?fbm1d7") format("woff"),url("../fonts/dd-roles.ttf?fbm1d7") format("truetype"),url("../fonts/dd-roles.svg?fbm1d7#dd-roles") format("svg");font-weight:normal;font-style:normal}[class^=icon-],[class*=" icon-"]{font-family:"dd-roles";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[class^=icon-],[class*=" icon-"]{font-family:"custom_dashicons";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-logobrand:before{content:""}.icon-logo:before{content:""}.icon-brand:before{content:""}.icon-rss:before{content:""}.icon-linkedin:before{content:""}.icon-facebook:before{content:""}.icon-googleplus:before{content:""}.icon-twitter:before{content:""}.icon-list:before{content:""}.icon-search:before{content:""}.icon-uniE60A:before{content:""}.icon-arrow-up:before{content:""}.icon-arrow-down:before{content:""}.icon-arrow-left:before{content:""}.icon-arrow-right:before{content:""}.icon-arrow-up2:before{content:""}.icon-arrow-down2:before{content:""}.icon-arrow-left2:before{content:""}.icon-arrow-right2:before{content:""}.icon-arrow-up3:before{content:""}.icon-arrow-down3:before{content:""}.icon-arrow-left3:before{content:""}.icon-publish:before{content:""}.icon-rocket:before{content:""}.icon-wordpress:before{content:""}.icon-powercord:before{content:""}.defaultRole{background-color:#ececec}.defaultRole.alternate{background-color:#ddd}.defaultRole.role-banned .row-title{color:#d54e21}.capabilitiesBlock input[type=checkbox]{margin-right:10px}.capabilitiesBlock input[type=checkbox].disabled{cursor:default}.defaultCaps,.otherCaps{background:#fcfcfc;padding:12px;margin:12px auto;-webkit-border-radius:3px;border-radius:3px}.defaultCaps h4,.otherCaps h4{margin-top:0}.defaultCaps ul,.otherCaps ul{float:none;display:inline-block;width:100%}.defaultCaps ul li,.otherCaps ul li{width:25%;float:left}.customCap{background:#ececec;padding:12px;-webkit-border-radius:3px;border-radius:3px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.migrate_to{text-align:center}.capLabel{position:relative}.capLabel.disabled{cursor:default}.capLabel .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}.capLabel.loading input{visibility:hidden}.capLabel.loading .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}#poststuff #submitdiv .inside,#poststuff #cleanUpdiv .inside,#poststuff #migratediv .inside,#poststuff #donate .inside{padding:0;margin:0}.dd-sidebar .postbox .hndle{cursor:default}#donate h3:before{font-family:"custom_dashicons";content:"";float:left;margin:1px 3px 0 0}#donate .inside{display:block}.table-roles{display:table}.table-roles .table-roles-head{display:table-header-group}.table-roles .table-roles-footer{display:table-footer-group}.column-role{width:50%}.column-percentBar{width:24%}.column-users{width:10%}.wp-list-table #the-list tr.roleRow td{display:table-cell}.submitCapability h4,.cleanupCap h4{margin:5px 0}.submitCapability i,.cleanupCap i{margin-bottom:10px;display:block;font-size:.9em}.submitCapability #major-publishing-actions,.cleanupCap #major-publishing-actions{background:none;border-top:none}.wp-core-ui .cleanupCap .button-primary{background:#d54e21;border-color:#b5411b #9c3a19 #9c3a19;box-shadow:0 1px 0 #9c3a19;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #9c3a19,1px 0 1px #9c3a19,0 1px 1px #9c3a19,-1px 0 1px #9c3a19}.wp-core-ui .cleanupCap .button-primary:hover{background:#e45c2f;border-color:#d54e21}#migratediv form{margin-bottom:0}@media only screen and (max-width: 850px){#post-body{display:flex;flex-direction:column}#post-body #postbox-container-1{order:2;margin-top:20px}#post-body #postbox-container-2{order:1}}@media only screen and (max-width: 600px){.defaultCaps ul li,.otherCaps ul li{width:100%;float:none}}/*# sourceMappingURL=style.css.map */ -
dd-roles/tags/3.2/dd_roles.php
r2174294 r2386617 2 2 /* 3 3 Plugin Name: DD_Roles 4 Version: 3. 14 Version: 3.2 5 5 Plugin URI: http://dijkstradesign.com 6 6 Description: A plug-in to add and edit the roles and capabilities … … 10 10 11 11 12 /* Copyright 20 19WOUTER DIJKSTRA (email : info@wouterdijkstra.com)12 /* Copyright 2020 WOUTER DIJKSTRA (email : info@wouterdijkstra.com) 13 13 14 14 This program is free software; you can redistribute it and/or modify … … 122 122 $rol_capabilities = array_keys( $role->capabilities ); 123 123 124 $countCap = count($rol_capabilities); 125 return $countCap; 126 } 127 128 /** 129 * @param $delcaps string/array 130 */ 131 function delete_capabilities($delcaps){ 132 $delete_caps = is_array($delcaps) ? $delcaps : array($delcaps); 133 global $wp_roles; 134 foreach ($delete_caps as $cap) { 124 return count($rol_capabilities); 125 } 126 127 /** 128 * @param $delCaps 129 */ 130 function delete_capabilities($delCaps){ 131 $deleteCaps = is_array($delCaps) ? $delCaps : array($delCaps); 132 global $wp_roles; 133 foreach ($deleteCaps as $cap) { 135 134 foreach (array_keys($wp_roles->roles) as $role) { 136 135 $wp_roles->remove_cap($role, $cap); … … 139 138 } 140 139 141 142 140 function DD_rolesSettings() { 143 141 … … 150 148 } 151 149 152 function onlyAdminRoles(){ 153 150 function getAllNonAdminRoles() { 154 151 global $wp_roles; 155 152 $roles = $wp_roles->get_names(); 156 $onlyAdmin = true;157 158 foreach ($roles as $role_id => $role) {159 if($role_id != 'administrator'){160 $totalUsers = self::getRoleTotalUsers($role_id); 161 if($totalUsers){162 $onlyAdmin = false;163 }164 }153 unset($roles['administrator']); 154 155 return $roles; 156 } 157 158 function onlyAdminRoles($onlyAdmin = true){ 159 foreach ($this->getAllNonAdminRoles() as $role_id => $role) { 160 $totalUsers = self::getRoleTotalUsers($role_id); 161 $onlyAdmin = $totalUsers ? false : $onlyAdmin; 165 162 } 166 163 return $onlyAdmin; … … 168 165 169 166 function deleteRole_callback() { 170 171 167 $role_id = $_POST['role_id']; 172 $dd_roles = json_decode(get_option('dd_roles'));173 $new_dd_roles = array_diff($dd_roles, array($role_id));174 175 168 $this->userMigrate($role_id); 176 update_option( 'dd_roles', json_encode($new_dd_roles) );177 169 178 170 $wp_roles = new WP_Roles(); … … 247 239 } 248 240 249 function isRoleUnique($name) {241 function isRoleUnique($name) { 250 242 global $wp_roles; 251 243 $unique = true; … … 258 250 } 259 251 } 260 261 if (!ctype_alnum($roleCredentials[0])) { 262 //check if NOT alphanumeric....So don't pass 263 $unique = false; 264 } 252 //check if NOT alphanumeric....So don't pass 253 $unique = !ctype_alnum($roleCredentials[0]) ? false : $unique; 265 254 266 255 return $unique; … … 274 263 } 275 264 276 function updateCustomRoleList($name) {277 278 $dd_roles = json_decode(get_option('dd_roles'));279 $roleCredentials = $this->createRoleCredentials($name);280 281 if($dd_roles) {282 array_push($dd_roles,$roleCredentials[0]);283 }284 else {285 $dd_roles = array($roleCredentials[0]);286 }287 update_option( 'dd_roles', json_encode($dd_roles) );288 }289 290 291 265 function add_dd_role($new_displayName=''){ 292 266 … … 296 270 297 271 if ($isUnique){ 298 299 $this->updateCustomRoleList($new_displayName);300 272 301 273 if ( ! isset( $GLOBALS[ 'wp_roles' ] ) ){ … … 421 393 */ 422 394 function getGroupedCapabilities(){ 423 424 395 return $this->groupedCapabilities; 425 426 396 } 427 397 … … 440 410 } 441 411 } 412 return false; 442 413 } 443 414 -
dd-roles/tags/3.2/js/default.js
r2174294 r2386617 2 2 3 3 $(document).on('keydown','.dd-new-role', function(e) { 4 var code = e.keyCode || e.which; 5 if(code === 13) { 4 if (e.key === 'Enter') { 6 5 e.preventDefault(); 7 6 $('.js-newRole').click(); … … 10 9 }); 11 10 $(document).on('keydown','.dd-new-capability', function(e) { 12 var code = e.keyCode || e.which; 13 14 if(code === 13) { 11 if (e.key === 'Enter') { 15 12 e.preventDefault(); 16 13 $('.js-newCapability').click(); -
dd-roles/tags/3.2/js/default.min.js
r2175615 r2386617 1 !function(l){function t(){l(".duplicated").removeClass("hidden")}l(document).on("keydown",".dd-new-role",function(e){if( 13===(e.keyCode||e.which))return e.preventDefault(),l(".js-newRole").click(),!1}),l(document).on("keydown",".dd-new-capability",function(e){if(13===(e.keyCode||e.which))return e.preventDefault(),l(".js-newCapability").click(),!1}),l(document).on("focus",".dd-new-role",function(e){l(".settings-error").fadeOut("fast",function(){l(this).addClass("hidden").attr("style","")})}),l(document).on("click",".js-newRole",function(){var e=l(".dd-new-role").val();if(""===e)t();else{var n={action:"verify_and_add",new_role_display_name:e};l.post(ajaxurl,n,function(e){parseInt(e)?location.reload():t()})}}),l(document).on("click",".js-newCapability",function(){var e=l(".dd-new-capability").val();if(""===e)t();else{var n={action:"create_capability",new_capability:e};l.post(ajaxurl,n,function(e){e?location.reload():t()})}}),l(document).on("click",".js-migrate",function(){var e={action:"migrateUsers",fromRole:l(".fromRole").val(),toRole:l(".toRole").val()};l.post(ajaxurl,e,function(e){location.reload()})}),l(document).on("change",".capLabel.active",function(){var n=l(this),t=n.parents(".roleRow").prev(".roleRow"),e={action:"changeCapState",state:n.children("input").is(":checked"),capName:n.children("input").val(),role_id:t.find(".role_id").val()};n.addClass("loading").find(".spinner").addClass("is-active"),l.post(ajaxurl,e,function(e){e=JSON.parse(e),n.removeClass("loading").find(".spinner").removeClass("is-active"),t.find(".progress-bar").css("width",e.percent),t.find(".progressCount").val(e.totalRoleActiveCapabilities),t.find(".sr-only").text(e.percent+" Capabilities")})}),l(document).on("click",".js-openInfo",function(e){e.preventDefault();var n=l(this).parents(".roleRow"),t=n.next(".capabilitiesRow"),a=n.find(".js-collapseLink"),o=a.text(),i=a.data("othertext");a.toggleClass("open").text(i).data("othertext",o),t.toggleClass("hidden")}),l(document).on("click",".deleteRole",function(e){e.preventDefault();var n={action:"deleteRole",role_id:l(this).parents(".roleRow").find(".role_id").val()};l.post(ajaxurl,n,function(e){location.reload()})}),l(document).on("click",".js-cleanUp",function(e){e.preventDefault();var n={action:"cleanUp",delcaps:l(".deleteCap").val()};l.post(ajaxurl,n,function(e){setInterval(location.reload(),5e3)})})}(jQuery);1 !function(l){function t(){l(".duplicated").removeClass("hidden")}l(document).on("keydown",".dd-new-role",function(e){if("Enter"===e.key)return e.preventDefault(),l(".js-newRole").click(),!1}),l(document).on("keydown",".dd-new-capability",function(e){if("Enter"===e.key)return e.preventDefault(),l(".js-newCapability").click(),!1}),l(document).on("focus",".dd-new-role",function(e){l(".settings-error").fadeOut("fast",function(){l(this).addClass("hidden").attr("style","")})}),l(document).on("click",".js-newRole",function(){var e=l(".dd-new-role").val();if(""===e)t();else{var n={action:"verify_and_add",new_role_display_name:e};l.post(ajaxurl,n,function(e){parseInt(e)?location.reload():t()})}}),l(document).on("click",".js-newCapability",function(){var e=l(".dd-new-capability").val();if(""===e)t();else{var n={action:"create_capability",new_capability:e};l.post(ajaxurl,n,function(e){e?location.reload():t()})}}),l(document).on("click",".js-migrate",function(){var e={action:"migrateUsers",fromRole:l(".fromRole").val(),toRole:l(".toRole").val()};l.post(ajaxurl,e,function(e){location.reload()})}),l(document).on("change",".capLabel.active",function(){var n=l(this),t=n.parents(".roleRow").prev(".roleRow"),e={action:"changeCapState",state:n.children("input").is(":checked"),capName:n.children("input").val(),role_id:t.find(".role_id").val()};n.addClass("loading").find(".spinner").addClass("is-active"),l.post(ajaxurl,e,function(e){e=JSON.parse(e),n.removeClass("loading").find(".spinner").removeClass("is-active"),t.find(".progress-bar").css("width",e.percent),t.find(".progressCount").val(e.totalRoleActiveCapabilities),t.find(".sr-only").text(e.percent+" Capabilities")})}),l(document).on("click",".js-openInfo",function(e){e.preventDefault();var n=l(this).parents(".roleRow"),t=n.next(".capabilitiesRow"),a=n.find(".js-collapseLink"),o=a.text(),i=a.data("othertext");a.toggleClass("open").text(i).data("othertext",o),t.toggleClass("hidden")}),l(document).on("click",".deleteRole",function(e){e.preventDefault();var n={action:"deleteRole",role_id:l(this).parents(".roleRow").find(".role_id").val()};l.post(ajaxurl,n,function(e){location.reload()})}),l(document).on("click",".js-cleanUp",function(e){e.preventDefault();var n={action:"cleanUp",delcaps:l(".deleteCap").val()};l.post(ajaxurl,n,function(e){setInterval(location.reload(),5e3)})})}(jQuery); -
dd-roles/tags/3.2/readme.txt
r2174294 r2386617 1 === DD Roles ===1 === DD Roles === 2 2 Contributors: Mosterd3d 3 3 Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=5V2C94HQAN63C&lc=US&item_name=Dijkstra%20Design¤cy_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted 4 4 Tags: Roles, Capabilities, Migrate, Users, Clean up, Custom, restrictions, restriction, block, user, role, admin bar, bar, banned, log, off, destroy, session, online, powerful, clear 5 5 Requires at least: 3.3 6 Tested up to: 5. 2.37 Stable tag: 3. 16 Tested up to: 5.5.1 7 Stable tag: 3.2 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 31 31 32 32 == Changelog == 33 34 = 3.2 = 35 * Fix minor bugs 36 * Replace deprecated e.which with e.key 33 37 34 38 = 3.1 = -
dd-roles/tags/3.2/views/settingPage.php
r2174294 r2386617 17 17 include_once('widgets/migrate_users.php'); 18 18 include_once('widgets/donate.php'); 19 // include_once('widgets/advanced.php'); 19 20 ?> 20 21 </div> -
dd-roles/tags/3.2/views/widgets/manage_capabilities.php
r2173179 r2386617 42 42 <select name="deleteCap" id="role" class="widefat deleteCap"> 43 43 <?php 44 foreach( $customCaps as $capability ) {45 $capabilityDisplay = str_replace('_',' ',$capability);46 $capabilityDisplay = ucfirst($capabilityDisplay);47 echo '<option value="'.$capability.'">'.$capabilityDisplay.'</option>';48 }44 foreach( $customCaps as $capability ) { 45 $capabilityDisplay = str_replace('_',' ',$capability); 46 $capabilityDisplay = ucfirst($capabilityDisplay); 47 echo '<option value="'.$capability.'">'.$capabilityDisplay.'</option>'; 48 } 49 49 ?> 50 50 </select> … … 63 63 </div> 64 64 <?php endif; ?> 65 66 65 </div> 67 66 </div> -
dd-roles/tags/3.2/views/widgets/migrate_users.php
r2174294 r2386617 1 1 <?php 2 2 $onlyAdminRoles = dd_roles::onlyAdminRoles(); 3 if (!$onlyAdminRoles){ 4 ?> 3 if (!$onlyAdminRoles) : ?> 5 4 <div id="migratediv" class="postbox "> 6 5 <h3 class="hndle"><span>Migrate Users</span></h3> … … 12 11 <select name="fromRole" id="role" class="widefat fromRole"> 13 12 <?php 14 global $wp_roles; 15 $roles = $wp_roles->get_names(); 13 foreach (self::getAllNonAdminRoles() as $role_id => $role) { 14 $totalUsers = self::getRoleTotalUsers($role_id); 15 $totalUsersText = $totalUsers ? ' ('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; 16 16 17 foreach ($roles as $role_id => $role) { 18 19 if($role_id != 'administrator'){ 20 21 $totalUsers = self::getRoleTotalUsers($role_id); 22 $totalUsersText = $totalUsers ? ' ('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; 17 if($totalUsers) { 23 18 echo '<option value="'.$role_id.'">'.translate_user_role( $role ).$totalUsersText.'</option>'; 24 19 } … … 33 28 <select name="toRole" id="role" class="widefat toRole"> 34 29 <?php 35 global $wp_roles; 36 $roles = $wp_roles->get_names(); 37 foreach ($roles as $role_id => $role) { 38 if($role_id != 'administrator'){ 30 foreach (self::getAllNonAdminRoles() as $role_id => $role) { 39 31 $totalUsers = self::getRoleTotalUsers($role_id); 40 $totalUsers = $totalUsers? '('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; // prints "4 cats"32 $totalUsers = isset($totalUsers) ? '('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; 41 33 echo '<option value="'.$role_id.'">'.translate_user_role( $role ).' '.$totalUsers.'</option>'; 42 34 } 43 }44 35 ?> 45 36 </select> … … 59 50 </div> 60 51 </div> 61 <?php 62 } 52 <?php endif; -
dd-roles/trunk/css/style.css
r2174294 r2386617 1 @-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#ffffff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent)}.progress{overflow:hidden;height:20px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#ffffff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width 0.6s ease;transition:width 0.6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255,255,255,0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255,255,255,0.15)), color-stop(0.75, rgba(255,255,255,0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}@font-face{font-family:'custom_dashicons';src:url("../fonts/custom_dashicons.eot?7k7b29");src:url("../fonts/custom_dashicons.eot?#iefix7k7b29") format("embedded-opentype"),url("../fonts/custom_dashicons.woff?7k7b29") format("woff"),url("../fonts/custom_dashicons.ttf?7k7b29") format("truetype"),url("../fonts/custom_dashicons.svg?7k7b29#custom_dashicons") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:'dd-roles';src:url("../fonts/dd-roles.eot?fbm1d7");src:url("../fonts/dd-roles.eot?#iefixfbm1d7") format("embedded-opentype"),url("../fonts/dd-roles.woff?fbm1d7") format("woff"),url("../fonts/dd-roles.ttf?fbm1d7") format("truetype"),url("../fonts/dd-roles.svg?fbm1d7#dd-roles") format("svg");font-weight:normal;font-style:normal}[class^="icon-"],[class*=" icon-"]{font-family:'dd-roles';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[class^="icon-"],[class*=" icon-"]{font-family:'custom_dashicons';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-logobrand:before{content:"\e604"}.icon-logo:before{content:"\e605"}.icon-brand:before{content:"\e606"}.icon-rss:before{content:"\e600"}.icon-linkedin:before{content:"\e601"}.icon-facebook:before{content:"\e603"}.icon-googleplus:before{content:"\e607"}.icon-twitter:before{content:"\e608"}.icon-list:before{content:"\e602"}.icon-search:before{content:"\e609"}.icon-uniE60A:before{content:"\e60a"}.icon-arrow-up:before{content:"\e60b"}.icon-arrow-down:before{content:"\e60c"}.icon-arrow-left:before{content:"\e60d"}.icon-arrow-right:before{content:"\e60e"}.icon-arrow-up2:before{content:"\e60f"}.icon-arrow-down2:before{content:"\e610"}.icon-arrow-left2:before{content:"\e611"}.icon-arrow-right2:before{content:"\e612"}.icon-arrow-up3:before{content:"\e613"}.icon-arrow-down3:before{content:"\e614"}.icon-arrow-left3:before{content:"\e615"}.icon-publish:before{content:"\e616"}.icon-rocket:before{content:"\e617"}.icon-wordpress:before{content:"\e618"}.icon-powercord:before{content:"\e619"}.defaultRole{background-color:#ececec}.defaultRole.alternate{background-color:#ddd}.defaultRole.role-banned .row-title{color:#d54e21}.capabilitiesBlock input[type="checkbox"]{margin-right:10px}.capabilitiesBlock input[type="checkbox"].disabled{cursor:default}.defaultCaps,.otherCaps{background:#fcfcfc;padding:12px;margin:12px auto;-webkit-border-radius:3px;border-radius:3px}.defaultCaps h4,.otherCaps h4{margin-top:0}.defaultCaps ul,.otherCaps ul{float:none;display:inline-block;width:100%}.defaultCaps ul li,.otherCaps ul li{width:25%;float:left}.customCap{background:#ececec;padding:12px;-webkit-border-radius:3px;border-radius:3px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.migrate_to{text-align:center}.capLabel{position:relative}.capLabel.disabled{cursor:default}.capLabel .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}.capLabel.loading input{visibility:hidden}.capLabel.loading .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}#poststuff #submitdiv .inside,#poststuff #cleanUpdiv .inside,#poststuff #migratediv .inside,#poststuff #donate .inside{padding:0;margin:0}.dd-sidebar .postbox .hndle{cursor:default}#donate h3:before{font-family:'custom_dashicons';content:"\e605";float:left;margin:1px 3px 0 0}#donate .inside{display:block}.table-roles{display:table}.table-roles .table-roles-head{display:table-header-group}.table-roles .table-roles-footer{display:table-footer-group}.column-role{width:50%}.column-percentBar{width:24%}.column-users{width:10%}.wp-list-table #the-list tr.roleRow td{display:table-cell}.submitCapability h4,.cleanupCap h4{margin:5px 0}.submitCapability i,.cleanupCap i{margin-bottom:10px;display:block;font-size:0.9em}.submitCapability #major-publishing-actions,.cleanupCap #major-publishing-actions{background:none;border-top:none}.wp-core-ui .cleanupCap .button-primary{background:#d54e21;border-color:#b5411b #9c3a19 #9c3a19;box-shadow:0 1px 0 #9c3a19;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #9c3a19, 1px 0 1px #9c3a19, 0 1px 1px #9c3a19, -1px 0 1px #9c3a19}.wp-core-ui .cleanupCap .button-primary:hover{background:#e45c2f;border-color:#d54e21}#migratediv form{margin-bottom:0} 2 /*# sourceMappingURL=style.css.map */ 1 @-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{overflow:hidden;height:16px;margin-bottom:20px;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:10px;line-height:16px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent)}.progress{overflow:hidden;height:16px;margin:3px 0 0;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:16px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));background-image:-webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:-moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-image:linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}@font-face{font-family:"custom_dashicons";src:url("../fonts/custom_dashicons.eot?7k7b29");src:url("../fonts/custom_dashicons.eot?#iefix7k7b29") format("embedded-opentype"),url("../fonts/custom_dashicons.woff?7k7b29") format("woff"),url("../fonts/custom_dashicons.ttf?7k7b29") format("truetype"),url("../fonts/custom_dashicons.svg?7k7b29#custom_dashicons") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:"dd-roles";src:url("../fonts/dd-roles.eot?fbm1d7");src:url("../fonts/dd-roles.eot?#iefixfbm1d7") format("embedded-opentype"),url("../fonts/dd-roles.woff?fbm1d7") format("woff"),url("../fonts/dd-roles.ttf?fbm1d7") format("truetype"),url("../fonts/dd-roles.svg?fbm1d7#dd-roles") format("svg");font-weight:normal;font-style:normal}[class^=icon-],[class*=" icon-"]{font-family:"dd-roles";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[class^=icon-],[class*=" icon-"]{font-family:"custom_dashicons";speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-logobrand:before{content:""}.icon-logo:before{content:""}.icon-brand:before{content:""}.icon-rss:before{content:""}.icon-linkedin:before{content:""}.icon-facebook:before{content:""}.icon-googleplus:before{content:""}.icon-twitter:before{content:""}.icon-list:before{content:""}.icon-search:before{content:""}.icon-uniE60A:before{content:""}.icon-arrow-up:before{content:""}.icon-arrow-down:before{content:""}.icon-arrow-left:before{content:""}.icon-arrow-right:before{content:""}.icon-arrow-up2:before{content:""}.icon-arrow-down2:before{content:""}.icon-arrow-left2:before{content:""}.icon-arrow-right2:before{content:""}.icon-arrow-up3:before{content:""}.icon-arrow-down3:before{content:""}.icon-arrow-left3:before{content:""}.icon-publish:before{content:""}.icon-rocket:before{content:""}.icon-wordpress:before{content:""}.icon-powercord:before{content:""}.defaultRole{background-color:#ececec}.defaultRole.alternate{background-color:#ddd}.defaultRole.role-banned .row-title{color:#d54e21}.capabilitiesBlock input[type=checkbox]{margin-right:10px}.capabilitiesBlock input[type=checkbox].disabled{cursor:default}.defaultCaps,.otherCaps{background:#fcfcfc;padding:12px;margin:12px auto;-webkit-border-radius:3px;border-radius:3px}.defaultCaps h4,.otherCaps h4{margin-top:0}.defaultCaps ul,.otherCaps ul{float:none;display:inline-block;width:100%}.defaultCaps ul li,.otherCaps ul li{width:25%;float:left}.customCap{background:#ececec;padding:12px;-webkit-border-radius:3px;border-radius:3px;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}.migrate_to{text-align:center}.capLabel{position:relative}.capLabel.disabled{cursor:default}.capLabel .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}.capLabel.loading input{visibility:hidden}.capLabel.loading .spinner{display:block;position:absolute;top:-1px;margin:0px;left:-2px}#poststuff #submitdiv .inside,#poststuff #cleanUpdiv .inside,#poststuff #migratediv .inside,#poststuff #donate .inside{padding:0;margin:0}.dd-sidebar .postbox .hndle{cursor:default}#donate h3:before{font-family:"custom_dashicons";content:"";float:left;margin:1px 3px 0 0}#donate .inside{display:block}.table-roles{display:table}.table-roles .table-roles-head{display:table-header-group}.table-roles .table-roles-footer{display:table-footer-group}.column-role{width:50%}.column-percentBar{width:24%}.column-users{width:10%}.wp-list-table #the-list tr.roleRow td{display:table-cell}.submitCapability h4,.cleanupCap h4{margin:5px 0}.submitCapability i,.cleanupCap i{margin-bottom:10px;display:block;font-size:.9em}.submitCapability #major-publishing-actions,.cleanupCap #major-publishing-actions{background:none;border-top:none}.wp-core-ui .cleanupCap .button-primary{background:#d54e21;border-color:#b5411b #9c3a19 #9c3a19;box-shadow:0 1px 0 #9c3a19;color:#fff;text-decoration:none;text-shadow:0 -1px 1px #9c3a19,1px 0 1px #9c3a19,0 1px 1px #9c3a19,-1px 0 1px #9c3a19}.wp-core-ui .cleanupCap .button-primary:hover{background:#e45c2f;border-color:#d54e21}#migratediv form{margin-bottom:0}@media only screen and (max-width: 850px){#post-body{display:flex;flex-direction:column}#post-body #postbox-container-1{order:2;margin-top:20px}#post-body #postbox-container-2{order:1}}@media only screen and (max-width: 600px){.defaultCaps ul li,.otherCaps ul li{width:100%;float:none}}/*# sourceMappingURL=style.css.map */ -
dd-roles/trunk/dd_roles.php
r2174294 r2386617 2 2 /* 3 3 Plugin Name: DD_Roles 4 Version: 3. 14 Version: 3.2 5 5 Plugin URI: http://dijkstradesign.com 6 6 Description: A plug-in to add and edit the roles and capabilities … … 10 10 11 11 12 /* Copyright 20 19WOUTER DIJKSTRA (email : info@wouterdijkstra.com)12 /* Copyright 2020 WOUTER DIJKSTRA (email : info@wouterdijkstra.com) 13 13 14 14 This program is free software; you can redistribute it and/or modify … … 122 122 $rol_capabilities = array_keys( $role->capabilities ); 123 123 124 $countCap = count($rol_capabilities); 125 return $countCap; 126 } 127 128 /** 129 * @param $delcaps string/array 130 */ 131 function delete_capabilities($delcaps){ 132 $delete_caps = is_array($delcaps) ? $delcaps : array($delcaps); 133 global $wp_roles; 134 foreach ($delete_caps as $cap) { 124 return count($rol_capabilities); 125 } 126 127 /** 128 * @param $delCaps 129 */ 130 function delete_capabilities($delCaps){ 131 $deleteCaps = is_array($delCaps) ? $delCaps : array($delCaps); 132 global $wp_roles; 133 foreach ($deleteCaps as $cap) { 135 134 foreach (array_keys($wp_roles->roles) as $role) { 136 135 $wp_roles->remove_cap($role, $cap); … … 139 138 } 140 139 141 142 140 function DD_rolesSettings() { 143 141 … … 150 148 } 151 149 152 function onlyAdminRoles(){ 153 150 function getAllNonAdminRoles() { 154 151 global $wp_roles; 155 152 $roles = $wp_roles->get_names(); 156 $onlyAdmin = true;157 158 foreach ($roles as $role_id => $role) {159 if($role_id != 'administrator'){160 $totalUsers = self::getRoleTotalUsers($role_id); 161 if($totalUsers){162 $onlyAdmin = false;163 }164 }153 unset($roles['administrator']); 154 155 return $roles; 156 } 157 158 function onlyAdminRoles($onlyAdmin = true){ 159 foreach ($this->getAllNonAdminRoles() as $role_id => $role) { 160 $totalUsers = self::getRoleTotalUsers($role_id); 161 $onlyAdmin = $totalUsers ? false : $onlyAdmin; 165 162 } 166 163 return $onlyAdmin; … … 168 165 169 166 function deleteRole_callback() { 170 171 167 $role_id = $_POST['role_id']; 172 $dd_roles = json_decode(get_option('dd_roles'));173 $new_dd_roles = array_diff($dd_roles, array($role_id));174 175 168 $this->userMigrate($role_id); 176 update_option( 'dd_roles', json_encode($new_dd_roles) );177 169 178 170 $wp_roles = new WP_Roles(); … … 247 239 } 248 240 249 function isRoleUnique($name) {241 function isRoleUnique($name) { 250 242 global $wp_roles; 251 243 $unique = true; … … 258 250 } 259 251 } 260 261 if (!ctype_alnum($roleCredentials[0])) { 262 //check if NOT alphanumeric....So don't pass 263 $unique = false; 264 } 252 //check if NOT alphanumeric....So don't pass 253 $unique = !ctype_alnum($roleCredentials[0]) ? false : $unique; 265 254 266 255 return $unique; … … 274 263 } 275 264 276 function updateCustomRoleList($name) {277 278 $dd_roles = json_decode(get_option('dd_roles'));279 $roleCredentials = $this->createRoleCredentials($name);280 281 if($dd_roles) {282 array_push($dd_roles,$roleCredentials[0]);283 }284 else {285 $dd_roles = array($roleCredentials[0]);286 }287 update_option( 'dd_roles', json_encode($dd_roles) );288 }289 290 291 265 function add_dd_role($new_displayName=''){ 292 266 … … 296 270 297 271 if ($isUnique){ 298 299 $this->updateCustomRoleList($new_displayName);300 272 301 273 if ( ! isset( $GLOBALS[ 'wp_roles' ] ) ){ … … 421 393 */ 422 394 function getGroupedCapabilities(){ 423 424 395 return $this->groupedCapabilities; 425 426 396 } 427 397 … … 440 410 } 441 411 } 412 return false; 442 413 } 443 414 -
dd-roles/trunk/js/default.js
r2174294 r2386617 2 2 3 3 $(document).on('keydown','.dd-new-role', function(e) { 4 var code = e.keyCode || e.which; 5 if(code === 13) { 4 if (e.key === 'Enter') { 6 5 e.preventDefault(); 7 6 $('.js-newRole').click(); … … 10 9 }); 11 10 $(document).on('keydown','.dd-new-capability', function(e) { 12 var code = e.keyCode || e.which; 13 14 if(code === 13) { 11 if (e.key === 'Enter') { 15 12 e.preventDefault(); 16 13 $('.js-newCapability').click(); -
dd-roles/trunk/js/default.min.js
r2175615 r2386617 1 !function(l){function t(){l(".duplicated").removeClass("hidden")}l(document).on("keydown",".dd-new-role",function(e){if( 13===(e.keyCode||e.which))return e.preventDefault(),l(".js-newRole").click(),!1}),l(document).on("keydown",".dd-new-capability",function(e){if(13===(e.keyCode||e.which))return e.preventDefault(),l(".js-newCapability").click(),!1}),l(document).on("focus",".dd-new-role",function(e){l(".settings-error").fadeOut("fast",function(){l(this).addClass("hidden").attr("style","")})}),l(document).on("click",".js-newRole",function(){var e=l(".dd-new-role").val();if(""===e)t();else{var n={action:"verify_and_add",new_role_display_name:e};l.post(ajaxurl,n,function(e){parseInt(e)?location.reload():t()})}}),l(document).on("click",".js-newCapability",function(){var e=l(".dd-new-capability").val();if(""===e)t();else{var n={action:"create_capability",new_capability:e};l.post(ajaxurl,n,function(e){e?location.reload():t()})}}),l(document).on("click",".js-migrate",function(){var e={action:"migrateUsers",fromRole:l(".fromRole").val(),toRole:l(".toRole").val()};l.post(ajaxurl,e,function(e){location.reload()})}),l(document).on("change",".capLabel.active",function(){var n=l(this),t=n.parents(".roleRow").prev(".roleRow"),e={action:"changeCapState",state:n.children("input").is(":checked"),capName:n.children("input").val(),role_id:t.find(".role_id").val()};n.addClass("loading").find(".spinner").addClass("is-active"),l.post(ajaxurl,e,function(e){e=JSON.parse(e),n.removeClass("loading").find(".spinner").removeClass("is-active"),t.find(".progress-bar").css("width",e.percent),t.find(".progressCount").val(e.totalRoleActiveCapabilities),t.find(".sr-only").text(e.percent+" Capabilities")})}),l(document).on("click",".js-openInfo",function(e){e.preventDefault();var n=l(this).parents(".roleRow"),t=n.next(".capabilitiesRow"),a=n.find(".js-collapseLink"),o=a.text(),i=a.data("othertext");a.toggleClass("open").text(i).data("othertext",o),t.toggleClass("hidden")}),l(document).on("click",".deleteRole",function(e){e.preventDefault();var n={action:"deleteRole",role_id:l(this).parents(".roleRow").find(".role_id").val()};l.post(ajaxurl,n,function(e){location.reload()})}),l(document).on("click",".js-cleanUp",function(e){e.preventDefault();var n={action:"cleanUp",delcaps:l(".deleteCap").val()};l.post(ajaxurl,n,function(e){setInterval(location.reload(),5e3)})})}(jQuery);1 !function(l){function t(){l(".duplicated").removeClass("hidden")}l(document).on("keydown",".dd-new-role",function(e){if("Enter"===e.key)return e.preventDefault(),l(".js-newRole").click(),!1}),l(document).on("keydown",".dd-new-capability",function(e){if("Enter"===e.key)return e.preventDefault(),l(".js-newCapability").click(),!1}),l(document).on("focus",".dd-new-role",function(e){l(".settings-error").fadeOut("fast",function(){l(this).addClass("hidden").attr("style","")})}),l(document).on("click",".js-newRole",function(){var e=l(".dd-new-role").val();if(""===e)t();else{var n={action:"verify_and_add",new_role_display_name:e};l.post(ajaxurl,n,function(e){parseInt(e)?location.reload():t()})}}),l(document).on("click",".js-newCapability",function(){var e=l(".dd-new-capability").val();if(""===e)t();else{var n={action:"create_capability",new_capability:e};l.post(ajaxurl,n,function(e){e?location.reload():t()})}}),l(document).on("click",".js-migrate",function(){var e={action:"migrateUsers",fromRole:l(".fromRole").val(),toRole:l(".toRole").val()};l.post(ajaxurl,e,function(e){location.reload()})}),l(document).on("change",".capLabel.active",function(){var n=l(this),t=n.parents(".roleRow").prev(".roleRow"),e={action:"changeCapState",state:n.children("input").is(":checked"),capName:n.children("input").val(),role_id:t.find(".role_id").val()};n.addClass("loading").find(".spinner").addClass("is-active"),l.post(ajaxurl,e,function(e){e=JSON.parse(e),n.removeClass("loading").find(".spinner").removeClass("is-active"),t.find(".progress-bar").css("width",e.percent),t.find(".progressCount").val(e.totalRoleActiveCapabilities),t.find(".sr-only").text(e.percent+" Capabilities")})}),l(document).on("click",".js-openInfo",function(e){e.preventDefault();var n=l(this).parents(".roleRow"),t=n.next(".capabilitiesRow"),a=n.find(".js-collapseLink"),o=a.text(),i=a.data("othertext");a.toggleClass("open").text(i).data("othertext",o),t.toggleClass("hidden")}),l(document).on("click",".deleteRole",function(e){e.preventDefault();var n={action:"deleteRole",role_id:l(this).parents(".roleRow").find(".role_id").val()};l.post(ajaxurl,n,function(e){location.reload()})}),l(document).on("click",".js-cleanUp",function(e){e.preventDefault();var n={action:"cleanUp",delcaps:l(".deleteCap").val()};l.post(ajaxurl,n,function(e){setInterval(location.reload(),5e3)})})}(jQuery); -
dd-roles/trunk/readme.txt
r2174294 r2386617 1 === DD Roles ===1 === DD Roles === 2 2 Contributors: Mosterd3d 3 3 Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=5V2C94HQAN63C&lc=US&item_name=Dijkstra%20Design¤cy_code=EUR&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted 4 4 Tags: Roles, Capabilities, Migrate, Users, Clean up, Custom, restrictions, restriction, block, user, role, admin bar, bar, banned, log, off, destroy, session, online, powerful, clear 5 5 Requires at least: 3.3 6 Tested up to: 5. 2.37 Stable tag: 3. 16 Tested up to: 5.5.1 7 Stable tag: 3.2 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 31 31 32 32 == Changelog == 33 34 = 3.2 = 35 * Fix minor bugs 36 * Replace deprecated e.which with e.key 33 37 34 38 = 3.1 = -
dd-roles/trunk/views/settingPage.php
r2174294 r2386617 17 17 include_once('widgets/migrate_users.php'); 18 18 include_once('widgets/donate.php'); 19 // include_once('widgets/advanced.php'); 19 20 ?> 20 21 </div> -
dd-roles/trunk/views/widgets/manage_capabilities.php
r2173179 r2386617 42 42 <select name="deleteCap" id="role" class="widefat deleteCap"> 43 43 <?php 44 foreach( $customCaps as $capability ) {45 $capabilityDisplay = str_replace('_',' ',$capability);46 $capabilityDisplay = ucfirst($capabilityDisplay);47 echo '<option value="'.$capability.'">'.$capabilityDisplay.'</option>';48 }44 foreach( $customCaps as $capability ) { 45 $capabilityDisplay = str_replace('_',' ',$capability); 46 $capabilityDisplay = ucfirst($capabilityDisplay); 47 echo '<option value="'.$capability.'">'.$capabilityDisplay.'</option>'; 48 } 49 49 ?> 50 50 </select> … … 63 63 </div> 64 64 <?php endif; ?> 65 66 65 </div> 67 66 </div> -
dd-roles/trunk/views/widgets/migrate_users.php
r2174294 r2386617 1 1 <?php 2 2 $onlyAdminRoles = dd_roles::onlyAdminRoles(); 3 if (!$onlyAdminRoles){ 4 ?> 3 if (!$onlyAdminRoles) : ?> 5 4 <div id="migratediv" class="postbox "> 6 5 <h3 class="hndle"><span>Migrate Users</span></h3> … … 12 11 <select name="fromRole" id="role" class="widefat fromRole"> 13 12 <?php 14 global $wp_roles; 15 $roles = $wp_roles->get_names(); 13 foreach (self::getAllNonAdminRoles() as $role_id => $role) { 14 $totalUsers = self::getRoleTotalUsers($role_id); 15 $totalUsersText = $totalUsers ? ' ('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; 16 16 17 foreach ($roles as $role_id => $role) { 18 19 if($role_id != 'administrator'){ 20 21 $totalUsers = self::getRoleTotalUsers($role_id); 22 $totalUsersText = $totalUsers ? ' ('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; 17 if($totalUsers) { 23 18 echo '<option value="'.$role_id.'">'.translate_user_role( $role ).$totalUsersText.'</option>'; 24 19 } … … 33 28 <select name="toRole" id="role" class="widefat toRole"> 34 29 <?php 35 global $wp_roles; 36 $roles = $wp_roles->get_names(); 37 foreach ($roles as $role_id => $role) { 38 if($role_id != 'administrator'){ 30 foreach (self::getAllNonAdminRoles() as $role_id => $role) { 39 31 $totalUsers = self::getRoleTotalUsers($role_id); 40 $totalUsers = $totalUsers? '('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; // prints "4 cats"32 $totalUsers = isset($totalUsers) ? '('.ngettext($totalUsers.' '.__('User'), $totalUsers.' '.__('Users'), $totalUsers).')' : ''; 41 33 echo '<option value="'.$role_id.'">'.translate_user_role( $role ).' '.$totalUsers.'</option>'; 42 34 } 43 }44 35 ?> 45 36 </select> … … 59 50 </div> 60 51 </div> 61 <?php 62 } 52 <?php endif;
Note: See TracChangeset
for help on using the changeset viewer.