Version Description
Download this release
Release Info
Developer | barrykooij |
Plugin | Download Monitor |
Version | 1.9.0 |
Comparing to | |
See all releases |
Code changes from version 1.8.1 to 1.9.0
- assets/css/admin.css +1 -1
- assets/css/admin.less +19 -2
- download-monitor.php +4 -6
- includes/admin/class-dlm-admin-cpt.php +92 -0
- includes/admin/class-dlm-admin.php +38 -6
- includes/admin/class-dlm-logging-list-table.php +96 -3
- includes/admin/uaparser/resources/regexes.json +16 -4
- includes/class-dlm-download-handler.php +29 -4
- includes/class-dlm-download-no-access-page-endpoint.php +41 -0
- includes/class-dlm-file-manager.php +1 -1
- includes/class-dlm-installer.php +44 -0
- includes/class-dlm-logging.php +14 -1
- includes/class-dlm-shortcodes.php +42 -0
- includes/class-dlm-upgrade-manager.php +22 -0
- includes/class-wp-dlm.php +5 -1
- includes/product/class-dlm-product.php +3 -3
- installer-functions.php +1 -2
- readme.txt +14 -1
- templates/no-access.php +17 -0
assets/css/admin.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
#dlm_logs td{padding:7px;vertical-align:middle}#dlm_logs .column-status{width:4em}#dlm_logs td.column-status{font-size:10px;vertical-align:middle;text-align:center}#dlm_logs td.column-status span{color:#fff;font-weight:400;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;height:18px;line-height:18px;width:18px;display:inline-block;background:url(../images/log-status-icons.png) top left no-repeat}#dlm_logs td.column-status .completed{background-color:#6cc644}#dlm_logs td.column-status .failed{background-color:#bd2c00;background-position-y:-18px}#dlm_logs td.column-status .redirected{background-color:#1c769b;background-position-y:-36px}#dlm_logs td.column-user_agent,#dlm_logs td.column-user_ip{font-family:monospace;font-weight:400}#dlm_logs span.dlm-description{font-weight:400}#dlm_logs .column-download,#dlm_logs .column-file,#dlm_logs .column-user,#dlm_logs .column-user_ua{width:16%!important}#dlm_logs .column-date,#dlm_logs .column-user_ip{width:6%!important}ul.download_monitor_file_browser{list-style:none outside;margin:0;border:1px solid #ddd;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#f9f9f9;padding:5px;-moz-box-shadow:inset 0 0 0 1px #fff;-webkit-box-shadow:inset 0 0 0 1px #fff;box-shadow:inset 0 0 0 1px #fff}ul.download_monitor_file_browser li{padding:0;margin:0}ul.download_monitor_file_browser li a{color:#21759B;display:block;padding:4px 0 4px 4px;text-decoration:none}ul.download_monitor_file_browser li a:hover{background-color:#eaf2fa}ul.download_monitor_file_browser li a:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f123";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.folder:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f318";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.filetype-3g2:before,ul.download_monitor_file_browser li a.filetype-3gp:before,ul.download_monitor_file_browser li a.filetype-asf:before,ul.download_monitor_file_browser li a.filetype-asx:before,ul.download_monitor_file_browser li a.filetype-avi:before,ul.download_monitor_file_browser li a.filetype-mov:before,ul.download_monitor_file_browser li a.filetype-mp4:before,ul.download_monitor_file_browser li a.filetype-mpg:before,ul.download_monitor_file_browser li a.filetype-rm:before,ul.download_monitor_file_browser li a.filetype-srt:before,ul.download_monitor_file_browser li a.filetype-vob:before,ul.download_monitor_file_browser li a.filetype-wmv:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f126";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.filetype-aif:before,ul.download_monitor_file_browser li a.filetype-iff:before,ul.download_monitor_file_browser li a.filetype-m3u:before,ul.download_monitor_file_browser li a.filetype-m4a:before,ul.download_monitor_file_browser li a.filetype-mid:before,ul.download_monitor_file_browser li a.filetype-midi:before,ul.download_monitor_file_browser li a.filetype-mp3:before,ul.download_monitor_file_browser li a.filetype-mpa:before,ul.download_monitor_file_browser li a.filetype-ra:before,ul.download_monitor_file_browser li a.filetype-wav:before,ul.download_monitor_file_browser li a.filetype-wma:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f127";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.filetype-ai:before,ul.download_monitor_file_browser li a.filetype-bmp:before,ul.download_monitor_file_browser li a.filetype-dds:before,ul.download_monitor_file_browser li a.filetype-eps:before,ul.download_monitor_file_browser li a.filetype-gif:before,ul.download_monitor_file_browser li a.filetype-ico:before,ul.download_monitor_file_browser li a.filetype-jpeg:before,ul.download_monitor_file_browser li a.filetype-jpg:before,ul.download_monitor_file_browser li a.filetype-png:before,ul.download_monitor_file_browser li a.filetype-ps:before,ul.download_monitor_file_browser li a.filetype-psd:before,ul.download_monitor_file_browser li a.filetype-pspimage:before,ul.download_monitor_file_browser li a.filetype-svg:before,ul.download_monitor_file_browser li a.filetype-tga:before,ul.download_monitor_file_browser li a.filetype-thm:before,ul.download_monitor_file_browser li a.filetype-tif:before,ul.download_monitor_file_browser li a.filetype-yuv:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f128";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li.nofiles{color:#999;font-style:italic;padding:4px 0}ul.download_monitor_file_browser li ul{list-style:none outside;margin:0;padding:0 0 0 28px}ul.download_monitor_file_browser li ul.loading{background:url(../images/ajax-loader.gif) no-repeat 24px 0;height:32px}table.wp-list-table .column-thumb{width:44px;text-align:center;white-space:nowrap}table.wp-list-table .column-dlm_download_cat,table.wp-list-table .column-dlm_download_tag,table.wp-list-table .column-file{width:11%!important}table.wp-list-table .column-file,table.wp-list-table .column-title{width:17%!important}table.wp-list-table .column-download_id,table.wp-list-table .column-version{width:5em}table.wp-list-table th.column-download_count span:first-child,table.wp-list-table th.column-featured span:first-child,table.wp-list-table th.column-members_only span:first-child,table.wp-list-table th.column-redirect_only span:first-child,table.wp-list-table th.column-thumb span:first-child{float:none;display:inline-block;width:1em;height:1em;line-height:1em;padding:2px 0 0;overflow:hidden}table.wp-list-table th.column-download_count .sorting-indicator,table.wp-list-table th.column-featured .sorting-indicator,table.wp-list-table th.column-members_only .sorting-indicator,table.wp-list-table th.column-redirect_only .sorting-indicator,table.wp-list-table th.column-thumb .sorting-indicator{float:right}table.wp-list-table th.column-thumb{width:52px;text-align:center}table.wp-list-table th.column-thumb span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f128";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-download_count{width:5em}table.wp-list-table th.column-download_count span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f346";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-members_only{width:3.5em}table.wp-list-table th.column-members_only span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f338";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-redirect_only{width:3.5em}table.wp-list-table th.column-redirect_only span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f103";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-featured{width:3.5em}table.wp-list-table th.column-featured span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f155";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table td.column-download_count,table.wp-list-table td.column-featured,table.wp-list-table td.column-members_only,table.wp-list-table td.column-redirect_only{text-align:left;padding-left:11px}table.wp-list-table td.column-download_count span.na,table.wp-list-table td.column-featured span.na,table.wp-list-table td.column-members_only span.na,table.wp-list-table td.column-redirect_only span.na{color:#999;width:1em;height:1em;line-height:1em;display:inline-block;overflow:hidden;vertical-align:middle}table.wp-list-table td.column-download_count span.na:before,table.wp-list-table td.column-featured span.na:before,table.wp-list-table td.column-members_only span.na:before,table.wp-list-table td.column-redirect_only span.na:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f460";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table td.column-download_count span.yes,table.wp-list-table td.column-featured span.yes,table.wp-list-table td.column-members_only span.yes,table.wp-list-table td.column-redirect_only span.yes{width:1em;height:1em;line-height:1em;display:inline-block;overflow:hidden;vertical-align:middle}table.wp-list-table td.column-download_count span.yes:before,table.wp-list-table td.column-featured span.yes:before,table.wp-list-table td.column-members_only span.yes:before,table.wp-list-table td.column-redirect_only span.yes:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f147";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table .column-thumb img{padding:2px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:32px;height:32px}#download-monitor-file .inside{padding:0;margin:0}#download-monitor-file .dlm-metaboxes-wrapper .close_all,#download-monitor-file .dlm-metaboxes-wrapper .expand_all{float:right;margin-left:1em;line-height:22px;text-decoration:none}#download-monitor-file .dlm-metaboxes-wrapper .expand_all:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f168";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .close_all:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f460";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper p.toolbar{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #DFDFDF;padding:7px 12px!important;overflow:hidden;zoom:1}#download-monitor-file .dlm-metaboxes-wrapper p.toolbar a.button{float:left;margin:0}#download-monitor-file .dlm-metaboxes-wrapper .fr,#download-monitor-file .dlm-metaboxes-wrapper button.add_attribute,#download-monitor-file .dlm-metaboxes-wrapper button.add_variable_attribute,#download-monitor-file .dlm-metaboxes-wrapper select.attribute_taxonomy{float:right;margin:0 0 0 6px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metaboxes{padding:0 12px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox-sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;margin:9px 0;border-width:1px;border-style:dashed}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox{background:#ececec;border:1px solid #ececec;margin:9px 0!important}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3{margin:0!important;padding:6px!important;font-size:1em!important;overflow:hidden;zoom:1;cursor:move}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 button{float:right}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 strong{font-weight:400;line-height:24px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 select{font-family:sans-serif}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 .handlediv{background-position:6px 5px!important;display:none;height:24px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox:hover h3 .handlediv{display:block}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table{width:100%;position:relative;background:#fff;padding:3px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td{text-align:left;padding:6px;vertical-align:top;border:0;line-height:26px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td label{text-align:left;display:block;line-height:21px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input{float:left;min-width:200px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input,#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td textarea{width:100%;margin:0;display:block;font-size:14px;padding:4px;color:#555}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td textarea{height:7.5em}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td select{width:100%}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.short{width:200px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.checkbox{width:auto;min-width:inherit;vertical-align:middle;display:inline;float:none}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.date-picker-field{width:50%;min-width:inherit;float:none;display:inline}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.hour,#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.minute{width:2em;min-width:inherit;float:none;display:inline}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td.attribute_name{width:200px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .minus,#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .plus{margin-top:6px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .fl{float:left}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .fr{float:right}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox:first-child h3{background:#EAF2FA;background-image:linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-o-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-moz-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-webkit-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-ms-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-webkit-gradient(linear,left bottom,left top,color-stop(0,#dae6f2),color-stop(1,#eaf2fa));border-color:#d3deea;color:#21759B}#download-monitor-file .dlm-metaboxes-wrapper .plus:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f132";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .minus:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f460";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .dlm_upload_file:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f317";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .dlm_browse_for_file:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f322";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-information p{overflow:hidden}#download-monitor-information p label{width:100%;font-weight:700;box-sizing:border-box;line-height:28px;float:left}#download-monitor-information p label input{width:65%;padding:5px;font-size:11px;font-weight:400;background:#eaeaea;border:0;box-shadow:none;box-sizing:border-box;float:right}#download-monitor-options .inside{padding:0;margin:0}#download-monitor-options .form-field-checkbox label{display:inline;padding:0 0 4px}#download-monitor-options .form-field-checkbox input{display:inline-block;width:auto;vertical-align:middle}#download-monitor-options .form-field-checkbox .dlm-description{padding:4px 0 0;display:block}#download-monitor-options .access_permissions{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #DFDFDF;padding:7px 12px!important;overflow:hidden;zoom:1}#download-monitor-options .access_permissions h4{margin:0 0 .5em}#download-monitor-options .access_permissions ul{background:#fff;border:1px solid #dfdfdf;height:110px;overflow:auto;padding:.5em .9em;margin:0}#download-monitor-options p{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #DFDFDF;padding:7px 12px!important;overflow:hidden;zoom:1}#insert-download{padding:20px}#insert-download .error,#insert-download .updated{margin-left:0;margin-right:0}#insert-download h2{margin-top:0}#insert-download label{margin:0 0 .25em;display:block;font-size:1.1em}#insert-download span.description{display:block}#insert-download input.input{margin:0 0 .25em;display:block;width:100%;font-size:1.1em}#insert-download .add_link{float:right}#insert-download ul.page-numbers{overflow:hidden;zoom:1;margin:0 auto;padding:0;text-align:center}#insert-download ul.page-numbers li{display:inline-block;margin:0;list-style:none outside;line-height:1em}#insert-download ul.page-numbers li a,#insert-download ul.page-numbers li span{text-decoration:none;border:1px solid #ddd;-webkit-border-radius:4px;border-radius:4px;padding:8px;display:block}#insert-download ul.page-numbers li span{border-color:#eee}#insert-download legend{font-weight:700;display:block;margin:0 0 1em}#insert-download fieldset label{display:block;margin:0 0 .5em}.dlm_extensions_wrap h2 a.dlm-reload-button{float:right}.dlm_extensions_wrap .dlm_extensions{padding:15px 0;overflow:hidden}.dlm_extensions_wrap .dlm_extensions div.dlm_extension{cursor:auto!important}.dlm_extensions_wrap .dlm_extensions div.dlm_extension a{color:#444;text-decoration:none}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .dlm_extension_img_wrapper{width:100%;background:#419CCB;text-align:center}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .dlm_extension_img_wrapper img{max-width:100%;margin:0 auto}.dlm_extensions_wrap .dlm_extensions div.dlm_extension h3{padding:0 20px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension p.extension-desc{min-height:85px;padding:0 20px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer{padding:0 20px 15px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_price{font-weight:700}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_price.sale{color:green}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_price.sale strike{color:#444}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_more{color:#459ac9;text-decoration:none;font-weight:700;float:right}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license{padding:0 20px 20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license p.license-status{padding:5px 0;margin:5px 0;background:red;font-weight:700;font-size:1.2em;color:#fff;text-align:center}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license p.license-status.active{background:green}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license input{width:100%;margin:7px 0;padding:7px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license a.button-primary{width:100%;margin:5px auto 0;color:#fff;text-align:center}
|
1 |
+
#dlm_logs td{padding:7px;vertical-align:middle}#dlm_logs .check-column{width:1.5em;padding:0;vertical-align:middle}#dlm_logs .column-status{width:2em}#dlm_logs td.column-status{font-size:10px;vertical-align:middle;text-align:center}#dlm_logs td.column-status span{color:#fff;font-weight:400;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;height:18px;line-height:18px;width:18px;display:inline-block;background:url(../images/log-status-icons.png) top left no-repeat}#dlm_logs td.column-status .completed{background-color:#6cc644}#dlm_logs td.column-status .failed{background-color:#bd2c00;background-position-y:-18px}#dlm_logs td.column-status .redirected{background-color:#1c769b;background-position-y:-36px}#dlm_logs td.column-user_agent,#dlm_logs td.column-user_ip{font-family:monospace;font-weight:400}#dlm_logs span.dlm-description{font-weight:400}#dlm_logs .column-download,#dlm_logs .column-file,#dlm_logs .column-user,#dlm_logs .column-user_ua{width:16%!important}#dlm_logs .column-date,#dlm_logs .column-user_ip{width:6%!important}.post-type-dlm_download .inline-edit-row .inline-edit-col-dlm .inline-edit-col-dlm-inner{margin-top:10px}ul.download_monitor_file_browser{list-style:none outside;margin:0;border:1px solid #ddd;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background:#f9f9f9;padding:5px;-moz-box-shadow:inset 0 0 0 1px #fff;-webkit-box-shadow:inset 0 0 0 1px #fff;box-shadow:inset 0 0 0 1px #fff}ul.download_monitor_file_browser li{padding:0;margin:0}ul.download_monitor_file_browser li a{color:#21759B;display:block;padding:4px 0 4px 4px;text-decoration:none}ul.download_monitor_file_browser li a:hover{background-color:#eaf2fa}ul.download_monitor_file_browser li a:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f123";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.folder:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f318";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.filetype-3g2:before,ul.download_monitor_file_browser li a.filetype-3gp:before,ul.download_monitor_file_browser li a.filetype-asf:before,ul.download_monitor_file_browser li a.filetype-asx:before,ul.download_monitor_file_browser li a.filetype-avi:before,ul.download_monitor_file_browser li a.filetype-mov:before,ul.download_monitor_file_browser li a.filetype-mp4:before,ul.download_monitor_file_browser li a.filetype-mpg:before,ul.download_monitor_file_browser li a.filetype-rm:before,ul.download_monitor_file_browser li a.filetype-srt:before,ul.download_monitor_file_browser li a.filetype-vob:before,ul.download_monitor_file_browser li a.filetype-wmv:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f126";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.filetype-aif:before,ul.download_monitor_file_browser li a.filetype-iff:before,ul.download_monitor_file_browser li a.filetype-m3u:before,ul.download_monitor_file_browser li a.filetype-m4a:before,ul.download_monitor_file_browser li a.filetype-mid:before,ul.download_monitor_file_browser li a.filetype-midi:before,ul.download_monitor_file_browser li a.filetype-mp3:before,ul.download_monitor_file_browser li a.filetype-mpa:before,ul.download_monitor_file_browser li a.filetype-ra:before,ul.download_monitor_file_browser li a.filetype-wav:before,ul.download_monitor_file_browser li a.filetype-wma:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f127";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li a.filetype-ai:before,ul.download_monitor_file_browser li a.filetype-bmp:before,ul.download_monitor_file_browser li a.filetype-dds:before,ul.download_monitor_file_browser li a.filetype-eps:before,ul.download_monitor_file_browser li a.filetype-gif:before,ul.download_monitor_file_browser li a.filetype-ico:before,ul.download_monitor_file_browser li a.filetype-jpeg:before,ul.download_monitor_file_browser li a.filetype-jpg:before,ul.download_monitor_file_browser li a.filetype-png:before,ul.download_monitor_file_browser li a.filetype-ps:before,ul.download_monitor_file_browser li a.filetype-psd:before,ul.download_monitor_file_browser li a.filetype-pspimage:before,ul.download_monitor_file_browser li a.filetype-svg:before,ul.download_monitor_file_browser li a.filetype-tga:before,ul.download_monitor_file_browser li a.filetype-thm:before,ul.download_monitor_file_browser li a.filetype-tif:before,ul.download_monitor_file_browser li a.filetype-yuv:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f128";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}ul.download_monitor_file_browser li.nofiles{color:#999;font-style:italic;padding:4px 0}ul.download_monitor_file_browser li ul{list-style:none outside;margin:0;padding:0 0 0 28px}ul.download_monitor_file_browser li ul.loading{background:url(../images/ajax-loader.gif) no-repeat 24px 0;height:32px}table.wp-list-table .column-thumb{width:44px;text-align:center;white-space:nowrap}table.wp-list-table .column-dlm_download_cat,table.wp-list-table .column-dlm_download_tag,table.wp-list-table .column-file{width:11%!important}table.wp-list-table .column-file,table.wp-list-table .column-title{width:17%!important}table.wp-list-table .column-download_id,table.wp-list-table .column-version{width:5em}table.wp-list-table th.column-download_count span:first-child,table.wp-list-table th.column-featured span:first-child,table.wp-list-table th.column-members_only span:first-child,table.wp-list-table th.column-redirect_only span:first-child,table.wp-list-table th.column-thumb span:first-child{float:none;display:inline-block;width:1em;height:1em;line-height:1em;padding:2px 0 0;overflow:hidden}table.wp-list-table th.column-download_count .sorting-indicator,table.wp-list-table th.column-featured .sorting-indicator,table.wp-list-table th.column-members_only .sorting-indicator,table.wp-list-table th.column-redirect_only .sorting-indicator,table.wp-list-table th.column-thumb .sorting-indicator{float:right}table.wp-list-table th.column-thumb{width:52px;text-align:center}table.wp-list-table th.column-thumb span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f128";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-download_count{width:5em}table.wp-list-table th.column-download_count span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f346";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-members_only{width:3.5em}table.wp-list-table th.column-members_only span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f338";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-redirect_only{width:3.5em}table.wp-list-table th.column-redirect_only span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f103";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table th.column-featured{width:3.5em}table.wp-list-table th.column-featured span:first-child:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f155";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table td.column-download_count,table.wp-list-table td.column-featured,table.wp-list-table td.column-members_only,table.wp-list-table td.column-redirect_only{text-align:left;padding-left:11px}table.wp-list-table td.column-download_count span.na,table.wp-list-table td.column-featured span.na,table.wp-list-table td.column-members_only span.na,table.wp-list-table td.column-redirect_only span.na{color:#999;width:1em;height:1em;line-height:1em;display:inline-block;overflow:hidden;vertical-align:middle}table.wp-list-table td.column-download_count span.na:before,table.wp-list-table td.column-featured span.na:before,table.wp-list-table td.column-members_only span.na:before,table.wp-list-table td.column-redirect_only span.na:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f460";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table td.column-download_count span.yes,table.wp-list-table td.column-featured span.yes,table.wp-list-table td.column-members_only span.yes,table.wp-list-table td.column-redirect_only span.yes{width:1em;height:1em;line-height:1em;display:inline-block;overflow:hidden;vertical-align:middle}table.wp-list-table td.column-download_count span.yes:before,table.wp-list-table td.column-featured span.yes:before,table.wp-list-table td.column-members_only span.yes:before,table.wp-list-table td.column-redirect_only span.yes:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f147";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}table.wp-list-table .column-thumb img{padding:2px;margin:0;border:1px solid #dfdfdf;vertical-align:middle;width:32px;height:32px}#download-monitor-file .inside{padding:0;margin:0}#download-monitor-file .dlm-metaboxes-wrapper .close_all,#download-monitor-file .dlm-metaboxes-wrapper .expand_all{float:right;margin-left:1em;line-height:22px;text-decoration:none}#download-monitor-file .dlm-metaboxes-wrapper .expand_all:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f168";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .close_all:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f460";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper p.toolbar{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #DFDFDF;padding:7px 12px!important;overflow:hidden;zoom:1}#download-monitor-file .dlm-metaboxes-wrapper p.toolbar a.button{float:left;margin:0}#download-monitor-file .dlm-metaboxes-wrapper .fr,#download-monitor-file .dlm-metaboxes-wrapper button.add_attribute,#download-monitor-file .dlm-metaboxes-wrapper button.add_variable_attribute,#download-monitor-file .dlm-metaboxes-wrapper select.attribute_taxonomy{float:right;margin:0 0 0 6px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metaboxes{padding:0 12px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox-sortable-placeholder{border-color:#bbb;background-color:#f5f5f5;margin:9px 0;border-width:1px;border-style:dashed}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox{background:#ececec;border:1px solid #ececec;margin:9px 0!important}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3{margin:0!important;padding:6px!important;font-size:1em!important;overflow:hidden;zoom:1;cursor:move}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 button{float:right}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 strong{font-weight:400;line-height:24px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 select{font-family:sans-serif}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox h3 .handlediv{background-position:6px 5px!important;display:none;height:24px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox:hover h3 .handlediv{display:block}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table{width:100%;position:relative;background:#fff;padding:3px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td{text-align:left;padding:6px;vertical-align:top;border:0;line-height:26px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td label{text-align:left;display:block;line-height:21px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input{float:left;min-width:200px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input,#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td textarea{width:100%;margin:0;display:block;font-size:14px;padding:4px;color:#555}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td textarea{height:7.5em}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td select{width:100%}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.short{width:200px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.checkbox{width:auto;min-width:inherit;vertical-align:middle;display:inline;float:none}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.date-picker-field{width:50%;min-width:inherit;float:none;display:inline}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.hour,#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td input.minute{width:2em;min-width:inherit;float:none;display:inline}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table td.attribute_name{width:200px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .minus,#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .plus{margin-top:6px}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .fl{float:left}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox table .fr{float:right}#download-monitor-file .dlm-metaboxes-wrapper .dlm-metabox:first-child h3{background:#EAF2FA;background-image:linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-o-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-moz-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-webkit-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-ms-linear-gradient(bottom,#dae6f2 0,#eaf2fa 100%);background-image:-webkit-gradient(linear,left bottom,left top,color-stop(0,#dae6f2),color-stop(1,#eaf2fa));border-color:#d3deea;color:#21759B}#download-monitor-file .dlm-metaboxes-wrapper .plus:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f132";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .minus:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f460";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .dlm_upload_file:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f317";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-file .dlm-metaboxes-wrapper .dlm_browse_for_file:before{font-family:dashicons!important;speak:none;font-weight:400;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0 4px 0 0;content:"\f322";top:1px;left:-1px;font-size:1em;line-height:inherit;position:relative;vertical-align:top}#download-monitor-information p{overflow:hidden}#download-monitor-information p label{width:100%;font-weight:700;box-sizing:border-box;line-height:28px;float:left}#download-monitor-information p label input{width:65%;padding:5px;font-size:11px;font-weight:400;background:#eaeaea;border:0;box-shadow:none;box-sizing:border-box;float:right}#download-monitor-options .inside{padding:0;margin:0}#download-monitor-options .form-field-checkbox label{display:inline;padding:0 0 4px}#download-monitor-options .form-field-checkbox input{display:inline-block;width:auto;vertical-align:middle}#download-monitor-options .form-field-checkbox .dlm-description{padding:4px 0 0;display:block}#download-monitor-options .access_permissions{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #DFDFDF;padding:7px 12px!important;overflow:hidden;zoom:1}#download-monitor-options .access_permissions h4{margin:0 0 .5em}#download-monitor-options .access_permissions ul{background:#fff;border:1px solid #dfdfdf;height:110px;overflow:auto;padding:.5em .9em;margin:0}#download-monitor-options p{margin:0!important;border-top:1px solid #fff;border-bottom:1px solid #DFDFDF;padding:7px 12px!important;overflow:hidden;zoom:1}#insert-download{padding:20px}#insert-download .error,#insert-download .updated{margin-left:0;margin-right:0}#insert-download h2{margin-top:0}#insert-download label{margin:0 0 .25em;display:block;font-size:1.1em}#insert-download span.description{display:block}#insert-download input.input{margin:0 0 .25em;display:block;width:100%;font-size:1.1em}#insert-download .add_link{float:right}#insert-download ul.page-numbers{overflow:hidden;zoom:1;margin:0 auto;padding:0;text-align:center}#insert-download ul.page-numbers li{display:inline-block;margin:0;list-style:none outside;line-height:1em}#insert-download ul.page-numbers li a,#insert-download ul.page-numbers li span{text-decoration:none;border:1px solid #ddd;-webkit-border-radius:4px;border-radius:4px;padding:8px;display:block}#insert-download ul.page-numbers li span{border-color:#eee}#insert-download legend{font-weight:700;display:block;margin:0 0 1em}#insert-download fieldset label{display:block;margin:0 0 .5em}.dlm_extensions_wrap h2 a.dlm-reload-button{float:right}.dlm_extensions_wrap .dlm_extensions{padding:15px 0;overflow:hidden}.dlm_extensions_wrap .dlm_extensions div.dlm_extension{cursor:auto!important}.dlm_extensions_wrap .dlm_extensions div.dlm_extension a{color:#444;text-decoration:none}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .dlm_extension_img_wrapper{width:100%;background:#419CCB;text-align:center}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .dlm_extension_img_wrapper img{max-width:100%;margin:0 auto}.dlm_extensions_wrap .dlm_extensions div.dlm_extension h3{padding:0 20px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension p.extension-desc{min-height:85px;padding:0 20px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer{padding:0 20px 15px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_price{font-weight:700}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_price.sale{color:green}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_price.sale strike{color:#444}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .product_footer .loop_more{color:#459ac9;text-decoration:none;font-weight:700;float:right}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license{padding:0 20px 20px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license p.license-status{padding:5px 0;margin:5px 0;background:red;font-weight:700;font-size:1.2em;color:#fff;text-align:center}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license p.license-status.active{background:green}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license input{width:100%;margin:7px 0;padding:7px}.dlm_extensions_wrap .dlm_extensions div.dlm_extension .extension_license a.button-primary{width:100%;margin:5px auto 0;color:#fff;text-align:center}
|
assets/css/admin.less
CHANGED
@@ -22,8 +22,14 @@
|
|
22 |
padding: 7px 7px;
|
23 |
vertical-align: middle;
|
24 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
.column-status {
|
26 |
-
width:
|
27 |
}
|
28 |
td.column-status {
|
29 |
font-size: 10px;
|
@@ -68,6 +74,16 @@
|
|
68 |
}
|
69 |
}
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
/* File lists */
|
72 |
ul.download_monitor_file_browser {
|
73 |
list-style: none outside;
|
@@ -443,7 +459,7 @@ table.wp-list-table {
|
|
443 |
overflow: hidden;
|
444 |
label {
|
445 |
width: 100%;
|
446 |
-
// font-size: 11px;
|
447 |
font-weight: bold;
|
448 |
box-sizing: border-box;
|
449 |
line-height: 28px;
|
@@ -578,6 +594,7 @@ table.wp-list-table {
|
|
578 |
}
|
579 |
}
|
580 |
|
|
|
581 |
.dlm_extensions_wrap {
|
582 |
h2 {
|
583 |
a.dlm-reload-button {
|
22 |
padding: 7px 7px;
|
23 |
vertical-align: middle;
|
24 |
}
|
25 |
+
.check-column {
|
26 |
+
width: 1.5em;
|
27 |
+
padding: 0;
|
28 |
+
vertical-align: middle;
|
29 |
+
}
|
30 |
+
|
31 |
.column-status {
|
32 |
+
width: 2em;
|
33 |
}
|
34 |
td.column-status {
|
35 |
font-size: 10px;
|
74 |
}
|
75 |
}
|
76 |
|
77 |
+
.post-type-dlm_download {
|
78 |
+
.inline-edit-row {
|
79 |
+
.inline-edit-col-dlm {
|
80 |
+
.inline-edit-col-dlm-inner {
|
81 |
+
margin-top: 10px;
|
82 |
+
}
|
83 |
+
}
|
84 |
+
}
|
85 |
+
}
|
86 |
+
|
87 |
/* File lists */
|
88 |
ul.download_monitor_file_browser {
|
89 |
list-style: none outside;
|
459 |
overflow: hidden;
|
460 |
label {
|
461 |
width: 100%;
|
462 |
+
// font-size: 11px;
|
463 |
font-weight: bold;
|
464 |
box-sizing: border-box;
|
465 |
line-height: 28px;
|
594 |
}
|
595 |
}
|
596 |
|
597 |
+
/* Extensions */
|
598 |
.dlm_extensions_wrap {
|
599 |
h2 {
|
600 |
a.dlm-reload-button {
|
download-monitor.php
CHANGED
@@ -3,11 +3,12 @@
|
|
3 |
Plugin Name: Download Monitor
|
4 |
Plugin URI: https://www.download-monitor.com
|
5 |
Description: A full solution for managing downloadable files, monitoring downloads and outputting download links and file information on your WordPress powered site.
|
6 |
-
Version: 1.
|
7 |
Author: Never5
|
8 |
Author URI: https://www.never5.com
|
9 |
Requires at least: 3.8
|
10 |
Tested up to: 4.3
|
|
|
11 |
|
12 |
License: GPL v3
|
13 |
|
@@ -32,7 +33,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
32 |
} // Exit if accessed directly
|
33 |
|
34 |
// Define DLM Version
|
35 |
-
define( 'DLM_VERSION', '1.
|
36 |
|
37 |
function __download_monitor_main() {
|
38 |
|
@@ -63,12 +64,9 @@ if ( is_admin() && ( false === defined( 'DOING_AJAX' ) || false === DOING_AJAX )
|
|
63 |
// Activation hook
|
64 |
register_activation_hook( DLM_PLUGIN_FILE_INSTALLER, '__download_monitor_install' );
|
65 |
|
66 |
-
// Flush Rewrites on Activation
|
67 |
-
register_activation_hook( DLM_PLUGIN_FILE_INSTALLER, 'flush_rewrite_rules', 11 );
|
68 |
-
|
69 |
// Multisite new blog hook
|
70 |
add_action( 'wpmu_new_blog', '__download_monitor_mu_new_blog', 10, 6 );
|
71 |
|
72 |
// Multisite blog delete
|
73 |
add_filter( 'wpmu_drop_tables', '__download_monitor_mu_delete_blog' );
|
74 |
-
}
|
3 |
Plugin Name: Download Monitor
|
4 |
Plugin URI: https://www.download-monitor.com
|
5 |
Description: A full solution for managing downloadable files, monitoring downloads and outputting download links and file information on your WordPress powered site.
|
6 |
+
Version: 1.9.0
|
7 |
Author: Never5
|
8 |
Author URI: https://www.never5.com
|
9 |
Requires at least: 3.8
|
10 |
Tested up to: 4.3
|
11 |
+
Text Domain: download-monitor
|
12 |
|
13 |
License: GPL v3
|
14 |
|
33 |
} // Exit if accessed directly
|
34 |
|
35 |
// Define DLM Version
|
36 |
+
define( 'DLM_VERSION', '1.9.0' );
|
37 |
|
38 |
function __download_monitor_main() {
|
39 |
|
64 |
// Activation hook
|
65 |
register_activation_hook( DLM_PLUGIN_FILE_INSTALLER, '__download_monitor_install' );
|
66 |
|
|
|
|
|
|
|
67 |
// Multisite new blog hook
|
68 |
add_action( 'wpmu_new_blog', '__download_monitor_mu_new_blog', 10, 6 );
|
69 |
|
70 |
// Multisite blog delete
|
71 |
add_filter( 'wpmu_drop_tables', '__download_monitor_mu_delete_blog' );
|
72 |
+
}
|
includes/admin/class-dlm-admin-cpt.php
CHANGED
@@ -26,6 +26,11 @@ class DLM_Admin_CPT {
|
|
26 |
add_filter( 'post_updated_messages', array( $this, 'post_updated_messages' ) );
|
27 |
add_filter( 'manage_edit-dlm_download_sortable_columns', array( $this, 'sortable_columns' ) );
|
28 |
add_filter( 'request', array( $this, 'sort_columns' ) );
|
|
|
|
|
|
|
|
|
|
|
29 |
}
|
30 |
|
31 |
/**
|
@@ -357,4 +362,91 @@ class DLM_Admin_CPT {
|
|
357 |
return $vars;
|
358 |
}
|
359 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
360 |
}
|
26 |
add_filter( 'post_updated_messages', array( $this, 'post_updated_messages' ) );
|
27 |
add_filter( 'manage_edit-dlm_download_sortable_columns', array( $this, 'sortable_columns' ) );
|
28 |
add_filter( 'request', array( $this, 'sort_columns' ) );
|
29 |
+
|
30 |
+
// bulk and quick edit
|
31 |
+
add_action( 'bulk_edit_custom_box', array( $this, 'bulk_quick_edit' ), 10, 2 );
|
32 |
+
add_action( 'quick_edit_custom_box', array( $this, 'bulk_quick_edit' ), 10, 2 );
|
33 |
+
add_action( 'save_post', array( $this, 'bulk_and_quick_edit_save_post' ), 10, 2 );
|
34 |
}
|
35 |
|
36 |
/**
|
362 |
return $vars;
|
363 |
}
|
364 |
|
365 |
+
/**
|
366 |
+
* Custom bulk edit - form
|
367 |
+
*
|
368 |
+
* @param mixed $column_name
|
369 |
+
* @param mixed $post_type
|
370 |
+
*/
|
371 |
+
public function bulk_quick_edit( $column_name, $post_type ) {
|
372 |
+
|
373 |
+
// only on our PT
|
374 |
+
if ( 'dlm_download' != $post_type || 'featured' != $column_name ) {
|
375 |
+
return;
|
376 |
+
}
|
377 |
+
|
378 |
+
// nonce field
|
379 |
+
wp_nonce_field( 'dlm_bulk_quick_edit_nonce', 'dlm_bulk_quick_edit_nonce' );
|
380 |
+
|
381 |
+
?>
|
382 |
+
<fieldset class="inline-edit-col-right inline-edit-col-dlm">
|
383 |
+
<div class="inline-edit-col inline-edit-col-dlm-inner">
|
384 |
+
<span class="title"><?php _e( 'Download Monitor Data', 'download-monitor' ); ?></span><br/>
|
385 |
+
<label for="_featured"><input type="checkbox" name="_featured" id="_featured"
|
386 |
+
value="1"/><?php _e( 'Featured download', 'download-monitor' ); ?></label>
|
387 |
+
<label for="_members_only"><input type="checkbox" name="_members_only" id="_members_only"
|
388 |
+
value="1"/><?php _e( 'Members only', 'download-monitor' ); ?></label>
|
389 |
+
<label for="_redirect_only"><input type="checkbox" name="_redirect_only" id="_redirect_only"
|
390 |
+
value="1"/><?php _e( 'Redirect to file', 'download-monitor' ); ?>
|
391 |
+
</label>
|
392 |
+
</div>
|
393 |
+
</fieldset>
|
394 |
+
<?php
|
395 |
+
}
|
396 |
+
|
397 |
+
/**
|
398 |
+
* Quick and bulk edit saving
|
399 |
+
*
|
400 |
+
* @param int $post_id
|
401 |
+
* @param WP_Post $post
|
402 |
+
*
|
403 |
+
* @return int
|
404 |
+
*/
|
405 |
+
public function bulk_and_quick_edit_save_post( $post_id, $post ) {
|
406 |
+
|
407 |
+
// If this is an autosave, our form has not been submitted, so we don't want to do anything.
|
408 |
+
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
|
409 |
+
return $post_id;
|
410 |
+
}
|
411 |
+
|
412 |
+
// Don't save revisions and autosaves
|
413 |
+
if ( wp_is_post_revision( $post_id ) || wp_is_post_autosave( $post_id ) ) {
|
414 |
+
return $post_id;
|
415 |
+
}
|
416 |
+
|
417 |
+
// Check post type is product
|
418 |
+
if ( 'dlm_download' != $post->post_type ) {
|
419 |
+
return $post_id;
|
420 |
+
}
|
421 |
+
|
422 |
+
// Check user permission
|
423 |
+
if ( ! current_user_can( 'manage_downloads', $post_id ) ) {
|
424 |
+
return $post_id;
|
425 |
+
}
|
426 |
+
|
427 |
+
// Check nonces
|
428 |
+
if ( ! isset( $_REQUEST['dlm_bulk_quick_edit_nonce'] ) ) {
|
429 |
+
return $post_id;
|
430 |
+
}
|
431 |
+
if ( ! wp_verify_nonce( $_REQUEST['dlm_bulk_quick_edit_nonce'], 'dlm_bulk_quick_edit_nonce' ) ) {
|
432 |
+
return $post_id;
|
433 |
+
}
|
434 |
+
|
435 |
+
// set featured
|
436 |
+
if ( isset( $_REQUEST['_featured'] ) ) {
|
437 |
+
update_post_meta( $post_id, '_featured', 'yes' );
|
438 |
+
}
|
439 |
+
|
440 |
+
// set members only
|
441 |
+
if ( isset( $_REQUEST['_members_only'] ) ) {
|
442 |
+
update_post_meta( $post_id, '_members_only', 'yes' );
|
443 |
+
}
|
444 |
+
|
445 |
+
// set redirect only
|
446 |
+
if ( isset( $_REQUEST['_redirect_only'] ) ) {
|
447 |
+
update_post_meta( $post_id, '_redirect_only', 'yes' );
|
448 |
+
}
|
449 |
+
|
450 |
+
return $post_id;
|
451 |
+
}
|
452 |
}
|
includes/admin/class-dlm-admin.php
CHANGED
@@ -94,6 +94,29 @@ class DLM_Admin {
|
|
94 |
return $pathdata;
|
95 |
}
|
96 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
97 |
/**
|
98 |
* init_settings function.
|
99 |
*
|
@@ -101,6 +124,7 @@ class DLM_Admin {
|
|
101 |
* @return void
|
102 |
*/
|
103 |
private function init_settings() {
|
|
|
104 |
$this->settings = apply_filters( 'download_monitor_settings',
|
105 |
array(
|
106 |
'general' => array(
|
@@ -219,9 +243,17 @@ class DLM_Admin {
|
|
219 |
),
|
220 |
)
|
221 |
),
|
222 |
-
'access'
|
223 |
__( 'Access', 'download-monitor' ),
|
224 |
array(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
225 |
array(
|
226 |
'name' => 'dlm_no_access_error',
|
227 |
'std' => sprintf( __( 'You do not have permission to access this download. %sGo to homepage%s', 'download-monitor' ), '<a href="' . home_url() . '">', '</a>' ),
|
@@ -363,7 +395,7 @@ class DLM_Admin {
|
|
363 |
* Print global notices
|
364 |
*/
|
365 |
private function print_global_notices() {
|
366 |
-
|
367 |
// check for nginx
|
368 |
if ( isset( $_SERVER['SERVER_SOFTWARE'] ) && stristr( $_SERVER['SERVER_SOFTWARE'], 'nginx' ) !== false && 1 != get_option( 'dlm_hide_notice-nginx_rules', 0 ) ) {
|
369 |
|
@@ -503,7 +535,7 @@ class DLM_Admin {
|
|
503 |
</p>
|
504 |
</form>
|
505 |
</div>
|
506 |
-
|
507 |
}
|
508 |
|
509 |
/**
|
@@ -531,11 +563,11 @@ class DLM_Admin {
|
|
531 |
href="<?php echo wp_nonce_url( add_query_arg( 'dlm_delete_logs', 'true', admin_url( 'edit.php?post_type=dlm_download&page=download-monitor-logs' ) ), 'delete_logs' ); ?>"
|
532 |
class="add-new-h2"><?php _e( 'Delete Logs', 'download-monitor' ); ?></a></h2><br/>
|
533 |
|
534 |
-
<form id="dlm_logs">
|
535 |
<?php $DLM_Logging_List_Table->display() ?>
|
536 |
</form>
|
537 |
</div>
|
538 |
-
|
539 |
}
|
540 |
|
541 |
/**
|
@@ -673,7 +705,7 @@ class DLM_Admin {
|
|
673 |
'dlm_download_page_dlm-extensions'
|
674 |
);
|
675 |
|
676 |
-
// Check to make sure we're on a
|
677 |
if ( isset( $current_screen->id ) && apply_filters( 'dlm_display_admin_footer_text', in_array( $current_screen->id, $dlm_page_ids ) ) ) {
|
678 |
// Change the footer text
|
679 |
$footer_text = sprintf( __( 'If you like %sDownload Monitor%s please leave us a %s★★★★★%s rating. A huge thank you from us in advance!', 'download-monitor' ), '<strong>', '</strong>', '<a href="https://wordpress.org/support/view/plugin-reviews/download-monitor?filter=5#postform" target="_blank">', '</a>' );
|
94 |
return $pathdata;
|
95 |
}
|
96 |
|
97 |
+
/**
|
98 |
+
* Return pages with ID => Page title format
|
99 |
+
*
|
100 |
+
* @return array
|
101 |
+
*/
|
102 |
+
private function get_pages() {
|
103 |
+
// pages
|
104 |
+
$pages = array( 0 => __( 'Select Page', 'download-monitor' ) );
|
105 |
+
|
106 |
+
// get pages from db
|
107 |
+
$db_pages = get_pages();
|
108 |
+
|
109 |
+
// check and loop
|
110 |
+
if ( count( $db_pages ) > 0 ) {
|
111 |
+
foreach ( $db_pages as $db_page ) {
|
112 |
+
$pages[ $db_page->ID ] = $db_page->post_title;
|
113 |
+
}
|
114 |
+
}
|
115 |
+
|
116 |
+
// return pages
|
117 |
+
return $pages;
|
118 |
+
}
|
119 |
+
|
120 |
/**
|
121 |
* init_settings function.
|
122 |
*
|
124 |
* @return void
|
125 |
*/
|
126 |
private function init_settings() {
|
127 |
+
|
128 |
$this->settings = apply_filters( 'download_monitor_settings',
|
129 |
array(
|
130 |
'general' => array(
|
243 |
),
|
244 |
)
|
245 |
),
|
246 |
+
'access' => array(
|
247 |
__( 'Access', 'download-monitor' ),
|
248 |
array(
|
249 |
+
array(
|
250 |
+
'name' => 'dlm_no_access_page',
|
251 |
+
'std' => '',
|
252 |
+
'label' => __( 'No Access Page', 'download-monitor' ),
|
253 |
+
'desc' => __( "Choose what page is displayed when the user has no access to a file. Don't forget to add the <code>[dlm_no_access]</code> shortcode to the page.", 'download-monitor' ),
|
254 |
+
'type' => 'select',
|
255 |
+
'options' => $this->get_pages()
|
256 |
+
),
|
257 |
array(
|
258 |
'name' => 'dlm_no_access_error',
|
259 |
'std' => sprintf( __( 'You do not have permission to access this download. %sGo to homepage%s', 'download-monitor' ), '<a href="' . home_url() . '">', '</a>' ),
|
395 |
* Print global notices
|
396 |
*/
|
397 |
private function print_global_notices() {
|
398 |
+
|
399 |
// check for nginx
|
400 |
if ( isset( $_SERVER['SERVER_SOFTWARE'] ) && stristr( $_SERVER['SERVER_SOFTWARE'], 'nginx' ) !== false && 1 != get_option( 'dlm_hide_notice-nginx_rules', 0 ) ) {
|
401 |
|
535 |
</p>
|
536 |
</form>
|
537 |
</div>
|
538 |
+
<?php
|
539 |
}
|
540 |
|
541 |
/**
|
563 |
href="<?php echo wp_nonce_url( add_query_arg( 'dlm_delete_logs', 'true', admin_url( 'edit.php?post_type=dlm_download&page=download-monitor-logs' ) ), 'delete_logs' ); ?>"
|
564 |
class="add-new-h2"><?php _e( 'Delete Logs', 'download-monitor' ); ?></a></h2><br/>
|
565 |
|
566 |
+
<form id="dlm_logs" method="post">
|
567 |
<?php $DLM_Logging_List_Table->display() ?>
|
568 |
</form>
|
569 |
</div>
|
570 |
+
<?php
|
571 |
}
|
572 |
|
573 |
/**
|
705 |
'dlm_download_page_dlm-extensions'
|
706 |
);
|
707 |
|
708 |
+
// Check to make sure we're on a Download Monitor admin page
|
709 |
if ( isset( $current_screen->id ) && apply_filters( 'dlm_display_admin_footer_text', in_array( $current_screen->id, $dlm_page_ids ) ) ) {
|
710 |
// Change the footer text
|
711 |
$footer_text = sprintf( __( 'If you like %sDownload Monitor%s please leave us a %s★★★★★%s rating. A huge thank you from us in advance!', 'download-monitor' ), '<strong>', '</strong>', '<a href="https://wordpress.org/support/view/plugin-reviews/download-monitor?filter=5#postform" target="_blank">', '</a>' );
|
includes/admin/class-dlm-logging-list-table.php
CHANGED
@@ -14,12 +14,15 @@ class DLM_Logging_List_Table extends WP_List_Table {
|
|
14 |
/** @var UAParser */
|
15 |
private $uaparser = null;
|
16 |
|
|
|
|
|
|
|
17 |
/**
|
18 |
* __construct function.
|
19 |
*
|
20 |
* @access public
|
21 |
*/
|
22 |
-
function __construct() {
|
23 |
global $status, $page, $wpdb;
|
24 |
|
25 |
parent::__construct( array(
|
@@ -37,6 +40,32 @@ class DLM_Logging_List_Table extends WP_List_Table {
|
|
37 |
}
|
38 |
}
|
39 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
40 |
/**
|
41 |
* column_default function.
|
42 |
*
|
@@ -47,7 +76,7 @@ class DLM_Logging_List_Table extends WP_List_Table {
|
|
47 |
*
|
48 |
* @return void
|
49 |
*/
|
50 |
-
function column_default( $log, $column_name ) {
|
51 |
switch ( $column_name ) {
|
52 |
case 'status' :
|
53 |
switch ( $log->download_status ) {
|
@@ -133,6 +162,7 @@ class DLM_Logging_List_Table extends WP_List_Table {
|
|
133 |
*/
|
134 |
public function get_columns() {
|
135 |
$columns = array(
|
|
|
136 |
'status' => '',
|
137 |
'download' => __( 'Download', 'download-monitor' ),
|
138 |
'file' => __( 'File', 'download-monitor' ),
|
@@ -149,10 +179,32 @@ class DLM_Logging_List_Table extends WP_List_Table {
|
|
149 |
* Generate the table navigation above or below the table
|
150 |
*/
|
151 |
public function display_tablenav( $which ) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
152 |
?>
|
153 |
<div class="tablenav <?php echo esc_attr( $which ); ?>">
|
|
|
|
|
|
|
|
|
|
|
154 |
<?php if ( 'top' == $which ) : ?>
|
|
|
155 |
<div class="alignleft actions">
|
|
|
156 |
<select name="filter_status">
|
157 |
<option value=""><?php _e( 'Any status', 'download-monitor' ); ?></option>
|
158 |
<option
|
@@ -230,9 +282,12 @@ class DLM_Logging_List_Table extends WP_List_Table {
|
|
230 |
* @access public
|
231 |
* @return void
|
232 |
*/
|
233 |
-
function prepare_items() {
|
234 |
global $wpdb;
|
235 |
|
|
|
|
|
|
|
236 |
$per_page = absint( $this->logs_per_page );
|
237 |
$current_page = absint( $this->get_pagenum() );
|
238 |
$filter_status = $this->filter_status;
|
@@ -282,4 +337,42 @@ class DLM_Logging_List_Table extends WP_List_Table {
|
|
282 |
|
283 |
$this->uaparser = new UAParser();
|
284 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
285 |
}
|
14 |
/** @var UAParser */
|
15 |
private $uaparser = null;
|
16 |
|
17 |
+
/** @var bool $display_delete_message */
|
18 |
+
private $display_delete_message = false;
|
19 |
+
|
20 |
/**
|
21 |
* __construct function.
|
22 |
*
|
23 |
* @access public
|
24 |
*/
|
25 |
+
public function __construct() {
|
26 |
global $status, $page, $wpdb;
|
27 |
|
28 |
parent::__construct( array(
|
40 |
}
|
41 |
}
|
42 |
|
43 |
+
/**
|
44 |
+
* The checkbox column
|
45 |
+
*
|
46 |
+
* @param object $item
|
47 |
+
*
|
48 |
+
* @return string
|
49 |
+
*/
|
50 |
+
public function column_cb( $item ) {
|
51 |
+
return sprintf(
|
52 |
+
'<input type="checkbox" name="log[]" value="%s" />', $item->ID
|
53 |
+
);
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Add bulk actions
|
58 |
+
*
|
59 |
+
* @return array
|
60 |
+
*/
|
61 |
+
protected function get_bulk_actions() {
|
62 |
+
$actions = array(
|
63 |
+
'delete' => __( 'Delete', 'download-monitor' )
|
64 |
+
);
|
65 |
+
|
66 |
+
return $actions;
|
67 |
+
}
|
68 |
+
|
69 |
/**
|
70 |
* column_default function.
|
71 |
*
|
76 |
*
|
77 |
* @return void
|
78 |
*/
|
79 |
+
public function column_default( $log, $column_name ) {
|
80 |
switch ( $column_name ) {
|
81 |
case 'status' :
|
82 |
switch ( $log->download_status ) {
|
162 |
*/
|
163 |
public function get_columns() {
|
164 |
$columns = array(
|
165 |
+
'cb' => '',
|
166 |
'status' => '',
|
167 |
'download' => __( 'Download', 'download-monitor' ),
|
168 |
'file' => __( 'File', 'download-monitor' ),
|
179 |
* Generate the table navigation above or below the table
|
180 |
*/
|
181 |
public function display_tablenav( $which ) {
|
182 |
+
|
183 |
+
// output nonce
|
184 |
+
if ( 'top' == $which ) {
|
185 |
+
wp_nonce_field( 'bulk-' . $this->_args['plural'] );
|
186 |
+
}
|
187 |
+
|
188 |
+
// display 'delete' success message
|
189 |
+
if ( 'top' == $which && true === $this->display_delete_message ) {
|
190 |
+
?>
|
191 |
+
<div id="message" class="updated notice notice-success">
|
192 |
+
<p><?php _e( 'Log entries deleted', 'download-monitor' ); ?></p>
|
193 |
+
</div>
|
194 |
+
<?php
|
195 |
+
}
|
196 |
+
|
197 |
?>
|
198 |
<div class="tablenav <?php echo esc_attr( $which ); ?>">
|
199 |
+
|
200 |
+
<div class="alignleft actions bulkactions">
|
201 |
+
<?php $this->bulk_actions( $which ); ?>
|
202 |
+
</div>
|
203 |
+
|
204 |
<?php if ( 'top' == $which ) : ?>
|
205 |
+
|
206 |
<div class="alignleft actions">
|
207 |
+
|
208 |
<select name="filter_status">
|
209 |
<option value=""><?php _e( 'Any status', 'download-monitor' ); ?></option>
|
210 |
<option
|
282 |
* @access public
|
283 |
* @return void
|
284 |
*/
|
285 |
+
public function prepare_items() {
|
286 |
global $wpdb;
|
287 |
|
288 |
+
// process bulk action
|
289 |
+
$this->process_bulk_action();
|
290 |
+
|
291 |
$per_page = absint( $this->logs_per_page );
|
292 |
$current_page = absint( $this->get_pagenum() );
|
293 |
$filter_status = $this->filter_status;
|
337 |
|
338 |
$this->uaparser = new UAParser();
|
339 |
}
|
340 |
+
|
341 |
+
/**
|
342 |
+
* Process bulk actions
|
343 |
+
*/
|
344 |
+
public function process_bulk_action() {
|
345 |
+
|
346 |
+
if ( 'delete' === $this->current_action() ) {
|
347 |
+
|
348 |
+
// check nonce
|
349 |
+
if ( empty( $_POST['_wpnonce'] ) || ! wp_verify_nonce( $_POST['_wpnonce'], 'bulk-' . $this->_args['plural'] ) ) {
|
350 |
+
wp_die( 'process_bulk_action() nonce check failed' );
|
351 |
+
}
|
352 |
+
|
353 |
+
// check capability
|
354 |
+
if ( ! current_user_can( 'dlm_manage_logs' ) ) {
|
355 |
+
wp_die( "You're not allowed to delete logs!" );
|
356 |
+
}
|
357 |
+
|
358 |
+
// logging object
|
359 |
+
$logging = new DLM_Logging();
|
360 |
+
|
361 |
+
// check
|
362 |
+
if ( count( $_POST['log'] ) > 0 ) {
|
363 |
+
|
364 |
+
// delete the posted logs
|
365 |
+
foreach ( $_POST['log'] as $log_id ) {
|
366 |
+
$logging->delete_log( absint( $log_id ) );
|
367 |
+
}
|
368 |
+
|
369 |
+
// display delete message
|
370 |
+
$this->display_delete_message = true;
|
371 |
+
|
372 |
+
}
|
373 |
+
|
374 |
+
}
|
375 |
+
|
376 |
+
}
|
377 |
+
|
378 |
}
|
includes/admin/uaparser/resources/regexes.json
CHANGED
@@ -512,6 +512,10 @@
|
|
512 |
"regex": "(Phantom)/V(\\d+)\\.(\\d+)",
|
513 |
"family_replacement": "Phantom Browser"
|
514 |
},
|
|
|
|
|
|
|
|
|
515 |
{
|
516 |
"regex": "([MS]?IE) (\\d+)\\.(\\d+)",
|
517 |
"family_replacement": "IE"
|
@@ -564,6 +568,18 @@
|
|
564 |
"regex": "(XBLWP7)",
|
565 |
"os_replacement": "Windows Phone"
|
566 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
567 |
{
|
568 |
"regex": "(Windows NT 6\\.1)",
|
569 |
"os_replacement": "Windows 7"
|
@@ -583,10 +599,6 @@
|
|
583 |
"regex": "(Windows NT 6\\.2; ARM;)",
|
584 |
"os_replacement": "Windows RT"
|
585 |
},
|
586 |
-
{
|
587 |
-
"regex": "(Windows NT 6\\.2)",
|
588 |
-
"os_replacement": "Windows 8"
|
589 |
-
},
|
590 |
{
|
591 |
"regex": "(Windows NT 5\\.0)",
|
592 |
"os_replacement": "Windows 2000"
|
512 |
"regex": "(Phantom)/V(\\d+)\\.(\\d+)",
|
513 |
"family_replacement": "Phantom Browser"
|
514 |
},
|
515 |
+
{
|
516 |
+
"regex": "Trident(.*)rv.(\\d+)\\.(\\d+)",
|
517 |
+
"family_replacement": "IE"
|
518 |
+
},
|
519 |
{
|
520 |
"regex": "([MS]?IE) (\\d+)\\.(\\d+)",
|
521 |
"family_replacement": "IE"
|
568 |
"regex": "(XBLWP7)",
|
569 |
"os_replacement": "Windows Phone"
|
570 |
},
|
571 |
+
{
|
572 |
+
"regex": "(Windows NT 6\\.4)",
|
573 |
+
"os_replacement": "Windows 10"
|
574 |
+
},
|
575 |
+
{
|
576 |
+
"regex": "(Windows NT 6\\.3)",
|
577 |
+
"os_replacement": "Windows 8.1"
|
578 |
+
},
|
579 |
+
{
|
580 |
+
"regex": "(Windows NT 6\\.2)",
|
581 |
+
"os_replacement": "Windows 8"
|
582 |
+
},
|
583 |
{
|
584 |
"regex": "(Windows NT 6\\.1)",
|
585 |
"os_replacement": "Windows 7"
|
599 |
"regex": "(Windows NT 6\\.2; ARM;)",
|
600 |
"os_replacement": "Windows RT"
|
601 |
},
|
|
|
|
|
|
|
|
|
602 |
{
|
603 |
"regex": "(Windows NT 5\\.0)",
|
604 |
"os_replacement": "Windows 2000"
|
includes/class-dlm-download-handler.php
CHANGED
@@ -79,7 +79,7 @@ class DLM_Download_Handler {
|
|
79 |
if ( false !== $can_download ) {
|
80 |
|
81 |
$visitor_ip = DLM_Utils::get_visitor_ip();
|
82 |
-
$ip_type
|
83 |
|
84 |
if ( filter_var( $visitor_ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 ) ) {
|
85 |
$ip_type = 4;
|
@@ -344,8 +344,33 @@ class DLM_Download_Handler {
|
|
344 |
wp_redirect( $redirect );
|
345 |
exit;
|
346 |
} else {
|
347 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
348 |
wp_die( wp_kses_post( get_option( 'dlm_no_access_error', '' ) ), __( 'Download Error', 'download-monitor' ), array( 'response' => 200 ) );
|
|
|
349 |
}
|
350 |
|
351 |
exit;
|
@@ -550,8 +575,8 @@ class DLM_Download_Handler {
|
|
550 |
*
|
551 |
* @access public
|
552 |
*
|
553 |
-
* @param string
|
554 |
-
* @param boolean
|
555 |
* @param boolean $range if HTTP RANGE to seek
|
556 |
*
|
557 |
* @return mixed
|
79 |
if ( false !== $can_download ) {
|
80 |
|
81 |
$visitor_ip = DLM_Utils::get_visitor_ip();
|
82 |
+
$ip_type = 0;
|
83 |
|
84 |
if ( filter_var( $visitor_ip, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4 ) ) {
|
85 |
$ip_type = 4;
|
344 |
wp_redirect( $redirect );
|
345 |
exit;
|
346 |
} else {
|
347 |
+
|
348 |
+
// get 'no access' page id
|
349 |
+
$no_access_page_id = get_option( 'dlm_no_access_page', 0 );
|
350 |
+
|
351 |
+
// check if a no access page is set
|
352 |
+
if ( $no_access_page_id > 0 ) {
|
353 |
+
|
354 |
+
// get permalink of no access page
|
355 |
+
$no_access_permalink = get_permalink( $no_access_page_id );
|
356 |
+
|
357 |
+
// check if we can find a permalink
|
358 |
+
if ( false !== $no_access_permalink ) {
|
359 |
+
|
360 |
+
// append download id to no access URL
|
361 |
+
$no_access_permalink = untrailingslashit( $no_access_permalink ) . '/download-id/' . $download->id . '/';
|
362 |
+
|
363 |
+
// redirect to no access page
|
364 |
+
wp_redirect( $no_access_permalink );
|
365 |
+
|
366 |
+
exit; // out
|
367 |
+
}
|
368 |
+
|
369 |
+
}
|
370 |
+
|
371 |
+
// if we get to this point, we have no proper 'no access' page. Fallback to default wp_die
|
372 |
wp_die( wp_kses_post( get_option( 'dlm_no_access_error', '' ) ), __( 'Download Error', 'download-monitor' ), array( 'response' => 200 ) );
|
373 |
+
|
374 |
}
|
375 |
|
376 |
exit;
|
575 |
*
|
576 |
* @access public
|
577 |
*
|
578 |
+
* @param string $file
|
579 |
+
* @param boolean $retbytes return bytes of file
|
580 |
* @param boolean $range if HTTP RANGE to seek
|
581 |
*
|
582 |
* @return mixed
|
includes/class-dlm-download-no-access-page-endpoint.php
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class DLM_Download_No_Access_Page_Endpoint {
|
4 |
+
|
5 |
+
private $endpoint = 'download-id';
|
6 |
+
|
7 |
+
/**
|
8 |
+
* Setup no access page
|
9 |
+
*/
|
10 |
+
public function setup() {
|
11 |
+
// add query var and enpoint
|
12 |
+
add_filter( 'query_vars', array( $this, 'add_query_vars' ), 0 );
|
13 |
+
add_action( 'init', array( $this, 'add_endpoint' ), 0 );
|
14 |
+
}
|
15 |
+
|
16 |
+
/**
|
17 |
+
* add_query_vars function.
|
18 |
+
*
|
19 |
+
* @access public
|
20 |
+
*
|
21 |
+
* @param array $vars
|
22 |
+
*
|
23 |
+
* @return array
|
24 |
+
*/
|
25 |
+
public function add_query_vars( $vars ) {
|
26 |
+
$vars[] = $this->endpoint;
|
27 |
+
|
28 |
+
return $vars;
|
29 |
+
}
|
30 |
+
|
31 |
+
/**
|
32 |
+
* add_endpoint function.
|
33 |
+
*
|
34 |
+
* @access public
|
35 |
+
* @return void
|
36 |
+
*/
|
37 |
+
public function add_endpoint() {
|
38 |
+
add_rewrite_endpoint( $this->endpoint, EP_ALL );
|
39 |
+
}
|
40 |
+
|
41 |
+
}
|
includes/class-dlm-file-manager.php
CHANGED
@@ -70,7 +70,7 @@ class DLM_File_Manager {
|
|
70 |
$file_path = trim( str_replace( $wp_uploads_url, $wp_uploads_dir, $file_path ) );
|
71 |
$file_path = realpath( $file_path );
|
72 |
|
73 |
-
} elseif (
|
74 |
|
75 |
/** This is a local file outside of wp-content so figure out the path */
|
76 |
$remote_file = false;
|
70 |
$file_path = trim( str_replace( $wp_uploads_url, $wp_uploads_dir, $file_path ) );
|
71 |
$file_path = realpath( $file_path );
|
72 |
|
73 |
+
} elseif ( is_multisite() && ( ( strpos( $file_path, network_site_url( '/', 'http' ) ) !== false ) || ( strpos( $file_path, network_site_url( '/', 'https' ) ) !== false ) ) ) {
|
74 |
|
75 |
/** This is a local file outside of wp-content so figure out the path */
|
76 |
$remote_file = false;
|
includes/class-dlm-installer.php
CHANGED
@@ -41,12 +41,26 @@ class DLM_Installer {
|
|
41 |
update_option( 'dlm_no_access_error', sprintf( __( 'You do not have permission to access this download. %sGo to homepage%s', 'download-monitor' ), '<a href="' . home_url() . '">', '</a>' ) );
|
42 |
}
|
43 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
// Set the current version
|
45 |
require_once( 'class-dlm-constants.php' );
|
46 |
update_option( DLM_Constants::OPTION_CURRENT_VERSION, DLM_VERSION );
|
47 |
|
|
|
|
|
|
|
|
|
|
|
48 |
}
|
49 |
|
|
|
50 |
/**
|
51 |
* Init user roles
|
52 |
*
|
@@ -142,4 +156,34 @@ class DLM_Installer {
|
|
142 |
}
|
143 |
}
|
144 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
145 |
}
|
41 |
update_option( 'dlm_no_access_error', sprintf( __( 'You do not have permission to access this download. %sGo to homepage%s', 'download-monitor' ), '<a href="' . home_url() . '">', '</a>' ) );
|
42 |
}
|
43 |
|
44 |
+
// create no access page
|
45 |
+
$this->create_no_access_page();
|
46 |
+
|
47 |
+
// setup no access page endpoints
|
48 |
+
require_once( 'class-dlm-download-no-access-page-endpoint.php' );
|
49 |
+
$no_access_page_endpoint = new DLM_Download_No_Access_Page_Endpoint();
|
50 |
+
$no_access_page_endpoint->setup();
|
51 |
+
|
52 |
// Set the current version
|
53 |
require_once( 'class-dlm-constants.php' );
|
54 |
update_option( DLM_Constants::OPTION_CURRENT_VERSION, DLM_VERSION );
|
55 |
|
56 |
+
// add rewrite rules
|
57 |
+
add_rewrite_endpoint( 'download-id', EP_ALL );
|
58 |
+
|
59 |
+
// flush rewrite rules
|
60 |
+
flush_rewrite_rules();
|
61 |
}
|
62 |
|
63 |
+
|
64 |
/**
|
65 |
* Init user roles
|
66 |
*
|
156 |
}
|
157 |
}
|
158 |
|
159 |
+
/**
|
160 |
+
* Create no access page
|
161 |
+
*/
|
162 |
+
public function create_no_access_page() {
|
163 |
+
|
164 |
+
// create cars listing page if not exists
|
165 |
+
$listings_slug = sanitize_title( __( 'No Access', 'download-monitor' ) );
|
166 |
+
$listings_page = get_page_by_path( $listings_slug );
|
167 |
+
|
168 |
+
// check if listings page exists
|
169 |
+
if ( null == $listings_page ) {
|
170 |
+
|
171 |
+
// create page
|
172 |
+
$page_id = wp_insert_post( array(
|
173 |
+
'post_type' => 'page',
|
174 |
+
'post_title' => __( 'No Access', 'download-monitor' ),
|
175 |
+
'post_content' => '[dlm_no_access]',
|
176 |
+
'post_status' => 'publish'
|
177 |
+
) );
|
178 |
+
|
179 |
+
if ( ! is_wp_error( $page_id ) ) {
|
180 |
+
// set page id as dlm_no_access_page
|
181 |
+
update_option( 'dlm_no_access_page', absint( $page_id ) );
|
182 |
+
}
|
183 |
+
|
184 |
+
|
185 |
+
}
|
186 |
+
|
187 |
+
}
|
188 |
+
|
189 |
}
|
includes/class-dlm-logging.php
CHANGED
@@ -15,7 +15,7 @@ class DLM_Logging {
|
|
15 |
* @return bool
|
16 |
*/
|
17 |
public function is_logging_enabled() {
|
18 |
-
return (1 == get_option( 'dlm_enable_logging', 0 ));
|
19 |
}
|
20 |
|
21 |
/**
|
@@ -59,5 +59,18 @@ class DLM_Logging {
|
|
59 |
return $wpdb->insert_id;
|
60 |
}
|
61 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
}
|
63 |
|
15 |
* @return bool
|
16 |
*/
|
17 |
public function is_logging_enabled() {
|
18 |
+
return ( 1 == get_option( 'dlm_enable_logging', 0 ) );
|
19 |
}
|
20 |
|
21 |
/**
|
59 |
return $wpdb->insert_id;
|
60 |
}
|
61 |
|
62 |
+
/**
|
63 |
+
* Delete a log entry
|
64 |
+
*
|
65 |
+
* @param $log_id
|
66 |
+
*
|
67 |
+
* @return bool
|
68 |
+
*/
|
69 |
+
public function delete_log( $log_id ) {
|
70 |
+
global $wpdb;
|
71 |
+
|
72 |
+
return ( false !== $wpdb->delete( $wpdb->download_log, array( 'ID' => $log_id ), array( '%d' ) ) );
|
73 |
+
}
|
74 |
+
|
75 |
}
|
76 |
|
includes/class-dlm-shortcodes.php
CHANGED
@@ -18,6 +18,7 @@ class DLM_Shortcodes {
|
|
18 |
add_shortcode( 'download', array( $this, 'download' ) );
|
19 |
add_shortcode( 'download_data', array( $this, 'download_data' ) );
|
20 |
add_shortcode( 'downloads', array( $this, 'downloads' ) );
|
|
|
21 |
}
|
22 |
|
23 |
/**
|
@@ -426,4 +427,45 @@ class DLM_Shortcodes {
|
|
426 |
|
427 |
return ob_get_clean();
|
428 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
429 |
}
|
18 |
add_shortcode( 'download', array( $this, 'download' ) );
|
19 |
add_shortcode( 'download_data', array( $this, 'download_data' ) );
|
20 |
add_shortcode( 'downloads', array( $this, 'downloads' ) );
|
21 |
+
add_shortcode( 'dlm_no_access', array( $this, 'no_access_page' ) );
|
22 |
}
|
23 |
|
24 |
/**
|
427 |
|
428 |
return ob_get_clean();
|
429 |
}
|
430 |
+
|
431 |
+
/**
|
432 |
+
* The dlm_no_access shortcode callback
|
433 |
+
*
|
434 |
+
* @param array $atts
|
435 |
+
*
|
436 |
+
* @return string
|
437 |
+
*/
|
438 |
+
public function no_access_page( $atts ) {
|
439 |
+
global $wp;
|
440 |
+
|
441 |
+
// atts
|
442 |
+
$atts = shortcode_atts( array(
|
443 |
+
'show_message' => 'true',
|
444 |
+
), $atts );
|
445 |
+
|
446 |
+
// start buffer
|
447 |
+
ob_start();
|
448 |
+
|
449 |
+
// show_message must be a bool
|
450 |
+
$atts['show_message'] = ( 'true' === $atts['show_message'] );
|
451 |
+
|
452 |
+
// return empty string if download-id is not set
|
453 |
+
if ( ! isset( $wp->query_vars['download-id'] ) ) {
|
454 |
+
return '';
|
455 |
+
}
|
456 |
+
|
457 |
+
// template handler
|
458 |
+
$template_handler = new DLM_Template_Handler();
|
459 |
+
|
460 |
+
// load no access template
|
461 |
+
$template_handler->get_template_part( 'no-access', '', '', array(
|
462 |
+
'download' => new DLM_Download( $wp->query_vars['download-id'] ),
|
463 |
+
'no_access_message' => ( ( $atts['show_message'] ) ? wp_kses_post( get_option( 'dlm_no_access_error', '' ) ) : '' )
|
464 |
+
) );
|
465 |
+
|
466 |
+
// set new content
|
467 |
+
$content = ob_get_clean();
|
468 |
+
|
469 |
+
return $content;
|
470 |
+
}
|
471 |
}
|
includes/class-dlm-upgrade-manager.php
CHANGED
@@ -6,6 +6,13 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
6 |
|
7 |
class DLM_Upgrade_Manager {
|
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
/**
|
10 |
* Check if there's a plugin update
|
11 |
*/
|
@@ -49,6 +56,21 @@ class DLM_Upgrade_Manager {
|
|
49 |
|
50 |
}
|
51 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
}
|
53 |
|
54 |
/**
|
6 |
|
7 |
class DLM_Upgrade_Manager {
|
8 |
|
9 |
+
/**
|
10 |
+
* Setup to run updater on wp_loaded
|
11 |
+
*/
|
12 |
+
public function setup() {
|
13 |
+
add_action( 'wp_loaded', array( $this, 'check' ) );
|
14 |
+
}
|
15 |
+
|
16 |
/**
|
17 |
* Check if there's a plugin update
|
18 |
*/
|
56 |
|
57 |
}
|
58 |
|
59 |
+
// Upgrade to version 1.9.0
|
60 |
+
if ( version_compare( $current_version, '1.9.0', '<' ) ) {
|
61 |
+
|
62 |
+
// Adding new capabilities
|
63 |
+
$installer = new DLM_Installer();
|
64 |
+
$installer->create_no_access_page();
|
65 |
+
|
66 |
+
// setup no access page endpoints
|
67 |
+
$no_access_page_endpoint = new DLM_Download_No_Access_Page_Endpoint();
|
68 |
+
$no_access_page_endpoint->setup();
|
69 |
+
|
70 |
+
// flush rules after page creation
|
71 |
+
flush_rewrite_rules();
|
72 |
+
}
|
73 |
+
|
74 |
}
|
75 |
|
76 |
/**
|
includes/class-wp-dlm.php
CHANGED
@@ -98,7 +98,7 @@ class WP_DLM {
|
|
98 |
|
99 |
// Upgrade Manager
|
100 |
$upgrade_manager = new DLM_Upgrade_Manager();
|
101 |
-
$upgrade_manager->
|
102 |
}
|
103 |
|
104 |
// Setup AJAX handler if doing AJAX
|
@@ -116,6 +116,10 @@ class WP_DLM {
|
|
116 |
$download_handler = new DLM_Download_Handler();
|
117 |
$download_handler->setup();
|
118 |
|
|
|
|
|
|
|
|
|
119 |
// Setup shortcodes
|
120 |
$dlm_shortcodes = new DLM_Shortcodes();
|
121 |
$dlm_shortcodes->setup();
|
98 |
|
99 |
// Upgrade Manager
|
100 |
$upgrade_manager = new DLM_Upgrade_Manager();
|
101 |
+
$upgrade_manager->setup();
|
102 |
}
|
103 |
|
104 |
// Setup AJAX handler if doing AJAX
|
116 |
$download_handler = new DLM_Download_Handler();
|
117 |
$download_handler->setup();
|
118 |
|
119 |
+
// setup no access page endpoints
|
120 |
+
$no_access_page_endpoint = new DLM_Download_No_Access_Page_Endpoint();
|
121 |
+
$no_access_page_endpoint->setup();
|
122 |
+
|
123 |
// Setup shortcodes
|
124 |
$dlm_shortcodes = new DLM_Shortcodes();
|
125 |
$dlm_shortcodes->setup();
|
includes/product/class-dlm-product.php
CHANGED
@@ -132,7 +132,7 @@ class DLM_Product {
|
|
132 |
|
133 |
// Check request
|
134 |
if ( is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) != 200 ) {
|
135 |
-
throw new Exception( 'Connection failed to the
|
136 |
}
|
137 |
|
138 |
// Get activation result
|
@@ -149,7 +149,7 @@ class DLM_Product {
|
|
149 |
return array( 'result' => 'success', 'message' => __( 'License successfully activated.', 'download-monitor' ) );
|
150 |
|
151 |
} elseif ( $activate_results === false ) {
|
152 |
-
throw new Exception( 'Connection failed to the
|
153 |
} elseif ( isset( $activate_results['error_code'] ) ) {
|
154 |
throw new Exception( $activate_results['error'] );
|
155 |
}
|
@@ -191,7 +191,7 @@ class DLM_Product {
|
|
191 |
|
192 |
// Check request
|
193 |
if ( is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) != 200 ) {
|
194 |
-
throw new Exception( 'Connection failed to the
|
195 |
}
|
196 |
|
197 |
// Get result
|
132 |
|
133 |
// Check request
|
134 |
if ( is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) != 200 ) {
|
135 |
+
throw new Exception( 'Connection failed to the License Key API server. Try again later.' );
|
136 |
}
|
137 |
|
138 |
// Get activation result
|
149 |
return array( 'result' => 'success', 'message' => __( 'License successfully activated.', 'download-monitor' ) );
|
150 |
|
151 |
} elseif ( $activate_results === false ) {
|
152 |
+
throw new Exception( 'Connection failed to the License Key API server. Try again later.' );
|
153 |
} elseif ( isset( $activate_results['error_code'] ) ) {
|
154 |
throw new Exception( $activate_results['error'] );
|
155 |
}
|
191 |
|
192 |
// Check request
|
193 |
if ( is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) != 200 ) {
|
194 |
+
throw new Exception( 'Connection failed to the License Key API server. Try again later.' );
|
195 |
}
|
196 |
|
197 |
// Get result
|
installer-functions.php
CHANGED
@@ -76,8 +76,7 @@ function __download_monitor_mu_new_blog( $blog_id, $user_id, $domain, $path, $si
|
|
76 |
// run installer on blog
|
77 |
$installer->install();
|
78 |
|
79 |
-
|
80 |
-
// restore current bloh
|
81 |
restore_current_blog();
|
82 |
}
|
83 |
}
|
76 |
// run installer on blog
|
77 |
$installer->install();
|
78 |
|
79 |
+
// restore current blog
|
|
|
80 |
restore_current_blog();
|
81 |
}
|
82 |
}
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://www.barrykooij.com/donate/
|
|
4 |
Tags: download, downloads, monitor, hits, download monitor, tracking, admin, count, counter, files, versions, download count, logging, AJAX, digital, documents, download category, download manager, download template, downloadmanager, file manager, file tree, grid, hits, ip-address, manager, media, monitor, password, protect downloads, tracker
|
5 |
Requires at least: 3.8
|
6 |
Tested up to: 4.3
|
7 |
-
Stable tag: 1.
|
8 |
License: GPLv3
|
9 |
|
10 |
Download Monitor is a plugin for uploading and managing downloads, tracking downloads, and displaying links.
|
@@ -107,6 +107,19 @@ More documentation can be found in our [Knowledge Base](https://www.download-mon
|
|
107 |
|
108 |
== Changelog ==
|
109 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
110 |
= 1.8.1: August 21, 2015 =
|
111 |
* Tweak: Small tweak to make download count fit better in box template.
|
112 |
* Tweak: Fixed a zero file size bug.
|
4 |
Tags: download, downloads, monitor, hits, download monitor, tracking, admin, count, counter, files, versions, download count, logging, AJAX, digital, documents, download category, download manager, download template, downloadmanager, file manager, file tree, grid, hits, ip-address, manager, media, monitor, password, protect downloads, tracker
|
5 |
Requires at least: 3.8
|
6 |
Tested up to: 4.3
|
7 |
+
Stable tag: 1.9.0
|
8 |
License: GPLv3
|
9 |
|
10 |
Download Monitor is a plugin for uploading and managing downloads, tracking downloads, and displaying links.
|
107 |
|
108 |
== Changelog ==
|
109 |
|
110 |
+
= 1.9.0: September 15, 2015 =
|
111 |
+
* Feature: We added a separate 'No Access' page that includes the following features:
|
112 |
+
* No Access Page : Added [dlm_no_access] shortcode that displays the no access content.
|
113 |
+
* No Access Page : Added new option in Access settings tab to set No Access Page.
|
114 |
+
* No Access Page : Added new template file for no access page.
|
115 |
+
* No Access Page : We now redirect to set No Access page (if set) when user has no access to download.
|
116 |
+
* Feature: Added ability to remove log entries.
|
117 |
+
* Feature: Added browser detection for IE 11 and up.
|
118 |
+
* Feature: Added OS detection for Windows 8.1
|
119 |
+
* Feature: Added OS detection for Windows 10
|
120 |
+
* Feature: Added Featured download, Members only and Redirect to file to bulk edit options.
|
121 |
+
* Feature: Added Featured download, Members only and Redirect to file to quick edit options.
|
122 |
+
|
123 |
= 1.8.1: August 21, 2015 =
|
124 |
* Tweak: Small tweak to make download count fit better in box template.
|
125 |
* Tweak: Fixed a zero file size bug.
|
templates/no-access.php
ADDED
@@ -0,0 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Download No Access
|
4 |
+
*/
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
+
exit;
|
8 |
+
} // Exit if accessed directly
|
9 |
+
?>
|
10 |
+
|
11 |
+
<?php do_action( 'dlm_no_access_before_message', $download ); ?>
|
12 |
+
|
13 |
+
<?php if ( ! empty( $no_access_message ) ) : ?>
|
14 |
+
<p><?php echo $no_access_message; ?></p>
|
15 |
+
<?php endif; ?>
|
16 |
+
|
17 |
+
<?php do_action( 'dlm_no_access_after_message', $download ); ?>
|