Plugin Directory

Changeset 2398471


Ignore:
Timestamp:
10/13/2020 07:39:57 AM (5 years ago)
Author:
pressmaninc
Message:

Update to ver 2.0.0

Location:
admin-user-control/trunk
Files:
5 added
21 edited

Legend:

Unmodified
Added
Removed
  • admin-user-control/trunk/admin-user-control.php

    r2311275 r2398471  
    11<?php
    2 
    32/**
    43 * Plugin Name: Admin User Control
    54 * Description: This plugin adds a useful feature to the administration screen that allows administrators to control the users involved in their operations.
    6  * Version: 1.0.0
     5 * Version: 2.0.0
    76 * Author: PRESSMAN
    87 * Author URI: https://www.pressman.ne.jp
     
    2625class Admin_User_Control {
    2726    const LIFETIME = 30; // 30 sec.
     27    const UM_KEY = 'auc_ip_addr';
    2828    private $am;
    2929    private $an;
     
    4747        add_action( 'wp_ajax_admin-user-control', [ $this, 'create_response' ] );
    4848
    49         $this->am->run();
    50         $this->an->run();
    51         $this->lm->run();
     49        // add option page
     50        add_action( 'admin_menu', [ $this, 'add_option_to_menu' ] );
     51
     52        $this->is_maintenance_enabled  = get_option( 'auc_is_maintenance_enabled', true );
     53        $this->is_notification_enabled = get_option( 'auc_is_notification_enabled', true );
     54        $this->is_loginmonitor_enabled = get_option( 'auc_is_loginmonitor_enabled', true );
     55
     56        if ( $this->is_maintenance_enabled ) {
     57            $this->am->run();
     58        }
     59        if ( $this->is_notification_enabled ) {
     60            $this->an->run();
     61        }
     62        if ( $this->is_loginmonitor_enabled ) {
     63            $this->lm->run();
     64        }
    5265    }
    5366
     
    6679
    6780        if ( is_admin_bar_showing() ) {
    68             wp_enqueue_style( 'login-monitor', plugin_dir_url( __FILE__ ) . "css/login-monitor{$ext}.css", [], $this->version );
     81            if ( $this->is_loginmonitor_enabled ) {
     82                wp_enqueue_style( 'login-monitor', plugin_dir_url( __FILE__ ) . "css/login-monitor{$ext}.css", [], $this->version );
     83            }
    6984        }
    7085
    71         wp_enqueue_style( 'admin-notification', plugin_dir_url( __FILE__ ) . "css/admin-notification{$ext}.css", [], $this->version );
    72         wp_enqueue_style( 'admin-maintenance', plugin_dir_url( __FILE__ ) . "css/admin-maintenance{$ext}.css", [], $this->version );
     86        wp_enqueue_style( 'auc-admin', plugin_dir_url( __FILE__ ) . "css/auc-admin{$ext}.css", [], $this->version );
     87        if ( $this->is_notification_enabled ) {
     88            wp_enqueue_style( 'admin-notification', plugin_dir_url( __FILE__ ) . "css/admin-notification{$ext}.css", [], $this->version );
     89        }
     90        if ( $this->is_maintenance_enabled ) {
     91            wp_enqueue_style( 'admin-maintenance', plugin_dir_url( __FILE__ ) . "css/admin-maintenance{$ext}.css", [], $this->version );
     92        }
    7393
    74         $capability = apply_filters( 'change_auc_capability', 'edit_posts' );
    75 
    76         if ( is_user_logged_in() && current_user_can( $capability ) ) {
     94        if ( is_user_logged_in() ) {
    7795            wp_enqueue_script( 'admin-user-control', plugin_dir_url( __FILE__ ) . "js/admin-user-control{$ext}.js", [], null, true );
    7896            $lifetime = apply_filters( 'change_auc_lifetime', self::LIFETIME );
     
    89107
    90108    public function load_acf_lite() {
    91         if ( ! defined( 'ACF_LITE' ) ) {
    92             define( 'ACF_LITE', true );
    93         }
    94109        if ( ! class_exists( 'Acf' ) ) {
     110            if ( ! defined( 'ACF_LITE' ) ) {
     111                define( 'ACF_LITE', true );
     112            }
    95113            include_once( plugin_dir_path( __FILE__ ) . 'includes/acf/acf.php' );
    96114        }
     
    101119    }
    102120
     121    public function add_option_to_menu() {
     122
     123        //create new top-level menu
     124        add_menu_page( 'Admin User Control', __( 'Admin User Control', 'admin-user-control' ), 'administrator', __FILE__, [
     125            $this,
     126            'require_option_page'
     127        ] );
     128
     129        //call register settings function
     130        add_action( 'admin_init', [ $this, 'register_settings_group' ] );
     131    }
     132
     133    public function require_option_page() {
     134        require_once( dirname( __FILE__ ) . '/includes/optionpage.php' );
     135    }
     136
     137    public function register_settings_group() {
     138        register_setting( 'admin-user-control-settings-group', 'auc_lm_display_user' );
     139        register_setting( 'admin-user-control-settings-group', 'auc_is_maintenance_enabled' );
     140        register_setting( 'admin-user-control-settings-group', 'auc_is_notification_enabled' );
     141        register_setting( 'admin-user-control-settings-group', 'auc_is_loginmonitor_enabled' );
     142    }
     143
    103144    public function create_response() {
    104145        $response = [];
     146        update_user_meta( get_current_user_id(), self::UM_KEY, $_SERVER['REMOTE_ADDR'] );
    105147
    106148        $response = array_merge( $response, $this->lm->create_response( apply_filters( 'change_auc_lifetime', self::LIFETIME ) ) );
  • admin-user-control/trunk/auc-login-monitor.php

    r2311275 r2398471  
    1616     */
    1717    public function add_lm_node( $wp_admin_bar ) {
    18         $wp_admin_bar->add_node( [
    19             'id'     => 'login-monitor',
    20             'parent' => 'top-secondary',
    21             'meta'   => [],
    22             'title'  => '<span class="ab-icon"></span><span class="ab-label"><span id="lm-cnt">--</span> ' . __( 'Logged in', 'admin-user-control' ) . '</span>',
    23             'href'   => '#',
    24         ] );
     18        if ($this->is_target_user()){
     19            $wp_admin_bar->add_node( [
     20                'id'     => 'login-monitor',
     21                'parent' => 'top-secondary',
     22                'meta'   => [],
     23                'title'  => '<span class="ab-icon"></span><span class="ab-label"><span id="lm-cnt">--</span> ' . __( 'Logged in', 'admin-user-control' ) . '</span>',
     24                'href'   => '#',
     25            ] );
    2526
    26         $wp_admin_bar->add_node( [
    27             'id'     => 'login-monitor-detail',
    28             'parent' => 'login-monitor',
    29             'meta'   => [],
    30             'title'  => '<ul id="lm-list"></ul>',
    31             'href'   => '#',
    32         ] );
     27            $wp_admin_bar->add_node( [
     28                'id'     => 'login-monitor-detail',
     29                'parent' => 'login-monitor',
     30                'meta'   => [],
     31                'title'  => '<ul id="lm-list"></ul>',
     32                'href'   => '#',
     33            ] );
     34        }
     35    }
     36
     37    public function is_target_user(){
     38        if (current_user_can( 'administrator' ) || get_option('auc_lm_display_user') != '1'){
     39            return true;
     40        }
     41        return false;
    3342    }
    3443
     
    4958        $isAdministrator = current_user_can( 'administrator' );
    5059        foreach ( $users->get_results() as $user ) {
     60            $avatar_url = esc_url(get_avatar_url( $user->ID, [ 'size' => 28 ] ));
    5161            $ary['login-monitor'][] = [
    5262                'id'           => $user->ID,
     
    5464                'display_name' => $user->display_name,
    5565                'color'        => substr( md5( $user->display_name ), 0, 6 ),
    56                 'profile_url'  => $isAdministrator ? $this->get_admin_edit_user_link( $user->ID ) : null
     66                'profile_url' => $isAdministrator ? apply_filters( 'auc_lm_user_link', $this->get_admin_edit_user_link( $user->ID ) ) : null,
     67                'avatar_url'  => $avatar_url
    5768            ];
    5869        }
  • admin-user-control/trunk/auc-maintenance.php

    r2311275 r2398471  
    269269
    270270        $widget = '<p>' . __( 'Click a title to display a detail.', 'admin-user-control' ) . '</p>';
    271         $widget .= '<ul class="auc-maintenance-list">';
     271        $widget .= '<ul class="auc-maintenance-list auc-dashboard-list">';
    272272        if ( $maintenances->have_posts() ) {
    273273            foreach ( $maintenances->posts as $maintenance ) {
  • admin-user-control/trunk/auc-notification.php

    r2311275 r2398471  
    2424        $wp_admin_bar->add_node( [
    2525            'id'    => self::POST_TYPE,
    26             'title' => __( 'New notification', 'admin-user-control' ),
     26            'title' => '<span>' . __( 'New notification', 'admin-user-control' ) . '</span>',
    2727            'href'  => get_dashboard_url(),
    2828        ] );
     
    8686            $widget                = '<p>' . __( 'Click a title to display a detail. If you read it, mark it as read.', 'admin-user-control' ) . '</p>';
    8787            $read_notification_ids = get_user_meta( get_current_user_id(), 'auc_read_notification' );
    88             $widget                .= '<ul class="auc-notification-list">';
     88            $widget                .= '<ul class="auc-notification-list auc-dashboard-list">';
    8989            foreach ( $notifications->posts as $notification ) {
    9090                $post_date              = date_i18n( get_option( 'date_format' ), strtotime( $notification->post_date ) );
     
    104104        <div class="title">{$post_title}</div>
    105105        <div class="body">{$post_body}</div>
    106         <div class="is_read"><span class="read_btn">{$read_notification_link}</span></div>
     106        <p class="is_read"><input type="submit" name="read_btn" id="read_btn" class="button read_btn" value="{$read_notification_link}"></p>
    107107    </div>
    108108</li>
     
    170170            ];
    171171    }
     172
    172173}
  • admin-user-control/trunk/css/admin-maintenance.css

    r2311275 r2398471  
    1 ul.auc-maintenance-list {
    2   margin: 1em 0 0 0;
    3 }
    4 ul.auc-maintenance-list li {
    5   display: flex;
    6   margin-bottom: 1em;
    7 }
    8 ul.auc-maintenance-list li .date {
    9   min-width: 155px;
    10 }
    11 ul.auc-maintenance-list li .content {
    12   width: calc(100% - 155px);
    13 }
    14 ul.auc-maintenance-list li .content .title {
    15   display: inline-block;
    16   cursor: pointer;
    17   color: #0073aa;
    18 }
    19 ul.auc-maintenance-list li .content .body {
    20   display: none;
    21 }
    22 ul.auc-maintenance-list li.open .content .body {
    23   display: block;
    24 }
    25 ul.auc-maintenance-list li:last-child {
    26   margin-bottom: 0.5em;
    27 }
    28 
     1@charset "UTF-8";
    292.auc-modal {
    303  display: none;
  • admin-user-control/trunk/css/admin-maintenance.css.map

    r2311275 r2398471  
    1 {"version":3,"sourceRoot":"","sources":["admin-maintenance.scss"],"names":[],"mappings":"AAAA;EACE;;AAEA;EACE;EACA;;AAEA;EACE;;AAEF;EACE;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAKN;EACE;;AAGF;EACE;;;AAGJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;;;AAOJ;AAAA;AAAA;EACE","file":"admin-maintenance.css"}
     1{
     2"version": 3,
     3"mappings": "AAAA,UAAW;EACT,OAAO,EAAE,IAAI;EACb,QAAQ,EAAE,KAAK;EACf,OAAO,EAAE,MAAM;EACf,IAAI,EAAE,CAAC;EACP,GAAG,EAAE,CAAC;EACN,MAAM,EAAE,IAAI;EACZ,KAAK,EAAE,IAAI;EACX,QAAQ,EAAE,IAAI;EACd,gBAAgB,EAAE,kBAAkB;;AAEpC,yBAAe;EACb,gBAAgB,EAAE,OAAO;EACzB,KAAK,EAAE,KAAK;EACZ,QAAQ,EAAE,KAAK;EACf,OAAO,EAAE,MAAM;EACf,IAAI,EAAE,iBAAiB;EACvB,GAAG,EAAE,KAAK;EACV,OAAO,EAAE,IAAI;EACb,UAAU,EAAE,8BAA8B;EAC1C,MAAM,EAAE,iBAAiB;EACzB,aAAa,EAAE,GAAG;;AAGpB,sBAAY;EACV,OAAO,EAAE,IAAI;;AAEb,4BAAM;EACJ,KAAK,EAAE,KAAK;EACZ,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,CAAC;;AAEV,uCAAW;EACT,SAAS,EAAE,IAAI;EACf,KAAK,EAAE,OAAO;;AAIlB,wBAAE;EACA,SAAS,EAAE,IAAI;EACf,MAAM,EAAE,SAAS;EACjB,WAAW,EAAE,GAAG;;AAGlB,mCAAa;EACX,MAAM,EAAE,CAAC;;;AAOb;;0DAA+C;EAC7C,OAAO,EAAE,eAAe",
     4"sources": ["admin-maintenance.scss"],
     5"names": [],
     6"file": "admin-maintenance.css"
     7}
  • admin-user-control/trunk/css/admin-maintenance.min.css

    r2311275 r2398471  
    1 ul.auc-maintenance-list{margin:1em 0 0 0}ul.auc-maintenance-list li{display:flex;margin-bottom:1em}ul.auc-maintenance-list li .date{min-width:155px}ul.auc-maintenance-list li .content{width:calc(100% - 155px)}ul.auc-maintenance-list li .content .title{display:inline-block;cursor:pointer;color:#0073aa}ul.auc-maintenance-list li .content .body{display:none}ul.auc-maintenance-list li.open .content .body{display:block}ul.auc-maintenance-list li:last-child{margin-bottom:.5em}.auc-modal{display:none;position:fixed;z-index:100000;left:0;top:0;height:100%;width:100%;overflow:auto;background-color:rgba(0,0,0,0.8)}.auc-modal .modal-content{background-color:#f7f7f7;width:400px;position:fixed;z-index:100001;left:calc(50% - 220px);top:100px;padding:20px;box-shadow:0 10px 10px rgba(0,0,0,0.7);border:2px solid #ca4a1f;border-radius:5px}.auc-modal .modal-body{display:flex}.auc-modal .modal-body .icon{width:100px;margin:0;padding:0}.auc-modal .modal-body .icon .dashicons{font-size:60px;color:#ca4a1f}.auc-modal .modal-body p{font-size:14px;margin:0 0 1em 0;line-height:1.5}.auc-modal .modal-body p:last-child{margin:0}.post-type-maintenance.post-new-php .ui_tpicker_second,.post-type-maintenance.post-new-php .ui_tpicker_second::before,.post-type-maintenance.post-php .ui_tpicker_second,.post-type-maintenance.post-php .ui_tpicker_second::before{display:none !important}
     1@charset "UTF-8";.auc-modal{display:none;position:fixed;z-index:100000;left:0;top:0;height:100%;width:100%;overflow:auto;background-color:rgba(0,0,0,.8)}.auc-modal .modal-content{background-color:#f7f7f7;width:400px;position:fixed;z-index:100001;left:calc(50% - 220px);top:100px;padding:20px;box-shadow:0 10px 10px rgba(0,0,0,.7);border:2px solid #ca4a1f;border-radius:5px}.auc-modal .modal-body{display:flex}.auc-modal .modal-body .icon{width:100px;margin:0;padding:0}.auc-modal .modal-body .icon .dashicons{font-size:60px;color:#ca4a1f}.auc-modal .modal-body p{font-size:14px;margin:0 0 1em 0;line-height:1.5}.auc-modal .modal-body p:last-child{margin:0}.post-type-maintenance.post-new-php .ui_tpicker_second,.post-type-maintenance.post-new-php .ui_tpicker_second::before,.post-type-maintenance.post-php .ui_tpicker_second,.post-type-maintenance.post-php .ui_tpicker_second::before{display:none!important}
  • admin-user-control/trunk/css/admin-maintenance.scss

    r2311275 r2398471  
    1 ul.auc-maintenance-list {
    2   margin: 1em 0 0 0;
    3 
    4   li {
    5     display: flex;
    6     margin-bottom: 1em;
    7 
    8     .date{
    9       min-width: 155px;
    10     }
    11     .content{
    12       width: calc(100% - 155px);
    13 
    14       .title{
    15         display: inline-block;
    16         cursor: pointer;
    17         color: #0073aa;
    18       }
    19 
    20       .body {
    21         display: none;
    22       }
    23     }
    24   }
    25 
    26   li.open .content .body {
    27     display: block;
    28   }
    29 
    30   li:last-child {
    31     margin-bottom: 0.5em;
    32   }
    33 }
    341.auc-modal {
    352  display: none;
  • admin-user-control/trunk/css/admin-notification.css

    r2311275 r2398471  
    11@charset "UTF-8";
    2 #wp-admin-bar-notifications {
    3   background-color: #ee0000;
    4   animation: blinkBackgroundColor 2s infinite alternate;
     2#wpadminbar #wp-admin-bar-notifications {
     3  background: #ca4a1f;
     4}
     5#wpadminbar #wp-admin-bar-notifications .ab-item {
     6  display: flex;
     7  align-items: center;
     8}
     9#wpadminbar #wp-admin-bar-notifications .ab-item::before {
     10  display: block;
     11  content: "\f348";
     12  margin-right: 6px;
     13  font: 20px/1 dashicons !important;
     14  color: #fff;
    515}
    616
    7 @keyframes blinkBackgroundColor {
    8   0% {
    9     color: #ee0000;
    10     background-color: #840000;
     17@media (max-width: 600px) {
     18  #wpadminbar .quicklinks #wp-admin-bar-notifications .ab-item::before {
     19    margin: 0;
     20    font-size: 40px !important;
    1121  }
    12   100% {
    13     color: #ffffff;
    14     background-color: #ee0000;
     22  #wpadminbar .quicklinks #wp-admin-bar-notifications .ab-item span {
     23    display: none;
    1524  }
    16 }
    17 ul.auc-notification-list {
    18   margin: 1em 0 0 0;
    19 }
    20 ul.auc-notification-list li {
    21   display: flex;
    22   margin-bottom: 1em;
    23 }
    24 ul.auc-notification-list li .date {
    25   min-width: 155px;
    26 }
    27 ul.auc-notification-list li .content {
    28   width: calc(100% - 155px);
    29 }
    30 ul.auc-notification-list li .content .title {
    31   display: inline-block;
    32   color: #0073aa;
    33   cursor: pointer;
    34 }
    35 ul.auc-notification-list li .content .body, ul.auc-notification-list li .content .is_read {
    36   display: none;
    37 }
    38 ul.auc-notification-list li .content .is_read {
    39   text-align: right;
    40 }
    41 ul.auc-notification-list li .content .read_btn {
    42   border: 1px solid #999;
    43   border-radius: 2px;
    44   padding: 1px 3px;
    45   display: inline-block;
    46   cursor: pointer;
    47 }
    48 ul.auc-notification-list li .content .read_btn:hover {
    49   background: #0073aa;
    50   color: #ffffff;
    51 }
    52 ul.auc-notification-list li.open .content .body,
    53 ul.auc-notification-list li.open .content .is_read {
    54   display: block;
    55 }
    56 ul.auc-notification-list li.read .content .is_read {
    57   display: none;
    58 }
    59 ul.auc-notification-list li.unread .title:after {
    60   vertical-align: middle;
    61   font-family: "dashicons";
    62   font-size: 1.4em;
    63   line-height: 1;
    64   display: inline-block;
    65   margin-left: 0.2em;
    66   content: "";
    67   color: #ee0000;
    68 }
    69 ul.auc-notification-list li:last-child {
    70   margin-bottom: 0.5em;
    7125}
    7226
  • admin-user-control/trunk/css/admin-notification.css.map

    r2311275 r2398471  
    1 {"version":3,"sourceRoot":"","sources":["admin-notification.scss"],"names":[],"mappings":";AAAA;EACE;EACA;;;AAGF;EACE;IACE;IACA;;EAEF;IACE;IACA;;;AAIJ;EACE;;AAEA;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAKN;AAAA;EAEE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE","file":"admin-notification.css"}
     1{
     2"version": 3,
     3"mappings": "AAAA,uCAAwC;EACvC,UAAU,EAAE,OAAO;;AACnB,gDAAS;EACR,OAAO,EAAE,IAAI;EACb,WAAW,EAAE,MAAM;;AACnB,wDAAU;EACT,OAAO,EAAE,KAAK;EACd,OAAO,EAAE,OAAO;EAChB,YAAY,EAAE,GAAG;EACjB,IAAI,EAAE,2BAA2B;EACjC,KAAK,EAAE,IAAI;;;AAId,yBAA0B;EAGvB,oEAAU;IACT,MAAM,EAAE,CAAC;IACT,SAAS,EAAE,eAAe;;EAE3B,iEAAK;IACJ,OAAO,EAAE,IAAI",
     4"sources": ["admin-notification.scss"],
     5"names": [],
     6"file": "admin-notification.css"
     7}
  • admin-user-control/trunk/css/admin-notification.min.css

    r2311275 r2398471  
    1 @charset "UTF-8";#wp-admin-bar-notifications{background-color:#e00;animation:blinkBackgroundColor 2s infinite alternate}@keyframes blinkBackgroundColor{0{color:#e00;background-color:#840000}100%{color:#fff;background-color:#e00}}ul.auc-notification-list{margin:1em 0 0 0}ul.auc-notification-list li{display:flex;margin-bottom:1em}ul.auc-notification-list li .date{min-width:155px}ul.auc-notification-list li .content{width:calc(100% - 155px)}ul.auc-notification-list li .content .title{display:inline-block;color:#0073aa;cursor:pointer}ul.auc-notification-list li .content .body,ul.auc-notification-list li .content .is_read{display:none}ul.auc-notification-list li .content .is_read{text-align:right}ul.auc-notification-list li .content .read_btn{border:1px solid #999;border-radius:2px;padding:1px 3px;display:inline-block;cursor:pointer}ul.auc-notification-list li .content .read_btn:hover{background:#0073aa;color:#fff}ul.auc-notification-list li.open .content .body,ul.auc-notification-list li.open .content .is_read{display:block}ul.auc-notification-list li.read .content .is_read{display:none}ul.auc-notification-list li.unread .title:after{vertical-align:middle;font-family:"dashicons";font-size:1.4em;line-height:1;display:inline-block;margin-left:.2em;content:"";color:#e00}ul.auc-notification-list li:last-child{margin-bottom:.5em}
     1@charset "UTF-8";#wpadminbar #wp-admin-bar-notifications{background:#ca4a1f}#wpadminbar #wp-admin-bar-notifications .ab-item{display:flex;align-items:center}#wpadminbar #wp-admin-bar-notifications .ab-item::before{display:block;content:"\f348";margin-right:6px;font:20px/1 dashicons!important;color:#fff}@media (max-width:600px){#wpadminbar .quicklinks #wp-admin-bar-notifications .ab-item::before{margin:0;font-size:40px!important}#wpadminbar .quicklinks #wp-admin-bar-notifications .ab-item span{display:none}}
  • admin-user-control/trunk/css/admin-notification.scss

    r2311275 r2398471  
    1 #wp-admin-bar-notifications {
    2   background-color: #ee0000;
    3   animation: blinkBackgroundColor 2s infinite alternate;
     1#wpadminbar #wp-admin-bar-notifications {
     2    background: #ca4a1f;
     3    .ab-item {
     4        display: flex;
     5        align-items: center;
     6        &::before {
     7            display: block;
     8            content: "\f348";
     9            margin-right: 6px;
     10            font: 20px/1 dashicons !important;
     11            color: #fff;
     12        }
     13    }
    414}
    5 
    6 @keyframes blinkBackgroundColor {
    7   0% {
    8     color: #ee0000;
    9     background-color: #840000;
    10   }
    11   100% {
    12     color: #ffffff;
    13     background-color: #ee0000;
    14   }
     15@media (max-width: 600px) {
     16    #wpadminbar .quicklinks #wp-admin-bar-notifications {
     17        .ab-item {
     18            &::before {
     19                margin: 0;
     20                font-size: 40px !important;
     21            }
     22            span {
     23                display: none;
     24            }
     25        }
     26    }
    1527}
    16 
    17 ul.auc-notification-list {
    18   margin: 1em 0 0 0;
    19 
    20   li {
    21     display: flex;
    22     margin-bottom: 1em;
    23 
    24     .date {
    25       min-width: 155px;
    26     }
    27 
    28     .content {
    29       width: calc(100% - 155px);
    30 
    31       .title {
    32         display: inline-block;
    33         color: #0073aa;
    34         cursor: pointer;
    35       }
    36 
    37       .body, .is_read {
    38         display: none;
    39       }
    40 
    41       .is_read {
    42         text-align: right;
    43       }
    44 
    45       .read_btn {
    46         border: 1px solid #999;
    47         border-radius: 2px;
    48         padding: 1px 3px;
    49         display: inline-block;
    50         cursor: pointer;
    51       }
    52 
    53       .read_btn:hover {
    54         background: #0073aa;
    55         color: #ffffff;
    56       }
    57     }
    58   }
    59 
    60   li.open .content .body,
    61   li.open .content .is_read {
    62     display: block;
    63   }
    64 
    65   li.read .content .is_read {
    66     display: none;
    67   }
    68 
    69   li.unread .title:after {
    70     vertical-align: middle;
    71     font-family: "dashicons";
    72     font-size: 1.4em;
    73     line-height: 1;
    74     display: inline-block;
    75     margin-left: 0.2em;
    76     content: "\f534";
    77     color: #ee0000;
    78   }
    79 
    80   li:last-child {
    81     margin-bottom: 0.5em;
    82   }
    83 }
  • admin-user-control/trunk/css/login-monitor.css

    r2311275 r2398471  
    11@charset "UTF-8";
    22#wp-admin-bar-login-monitor .ab-icon:before {
    3   content: "";
     3  content: "\f110";
    44  top: 3px;
     5}
     6#wp-admin-bar-login-monitor .ab-submenu {
     7  padding: 10px 0;
    58}
    69#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item {
    710  height: auto;
     11  padding: 0;
    812}
    913#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item:hover {
    1014  color: inherit;
    1115}
    12 #wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item a {
     16#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item > a {
    1317  padding: 0;
    1418}
    1519#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li {
    16   vertical-align: bottom;
    17   margin-bottom: 5px;
     20  margin: 0;
     21  padding: 0 10px;
    1822}
    19 #wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li .lm-badge {
    20   display: inline-block;
    21   line-height: 1;
    22   border-radius: 50%;
     23#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li:nth-child(n+2) {
     24  margin-top: 8px;
     25}
     26#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li a {
     27  position: relative;
     28  display: flex;
     29  align-items: center;
     30  margin: 0;
     31  padding: 0;
     32  width: 100%;
     33}
     34#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li.no-link {
     35  cursor: default;
     36}
     37#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li.no-link a {
     38  pointer-events: none;
     39}
     40#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li img {
    2341  width: 28px;
    2442  height: 28px;
    25   text-align: center;
    26   margin-right: 6px;
     43  padding: 0;
     44  margin: 0 10px 0 0;
    2745}
    28 #wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li .lm-badge .lm-badge-str {
    29   line-height: 1;
    30   display: inline-block;
    31   position: relative;
    32   font-weight: bold;
    33   font-size: 1.25em;
    34   top: 25%;
     46#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li span {
     47  width: 240px;
     48  max-width: 240px;
     49  padding: 0;
     50  margin: 0;
     51  line-height: 1.2;
     52  text-align: left;
     53  word-break: break-all;
     54  white-space: normal;
    3555}
    3656
    3757@media screen and (max-width: 782px) {
     58  #wpadminbar .quicklinks #wp-admin-bar-notifications > a {
     59    padding-left: 6px;
     60    padding-right: 6px;
     61  }
     62
    3863  #wp-toolbar > ul > #wp-admin-bar-login-monitor {
    3964    display: block;
     65  }
     66  #wp-toolbar > ul > #wp-admin-bar-login-monitor.hover {
     67    position: static;
     68  }
     69
     70  #wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li span {
     71    width: inherit;
     72    max-width: inherit;
    4073  }
    4174}
  • admin-user-control/trunk/css/login-monitor.css.map

    r2311275 r2398471  
    1 {"version":3,"sourceRoot":"","sources":["login-monitor.scss"],"names":[],"mappings":";AACC;EACC;EACA;;AAIA;EACC;;AAEA;EACC;;AAGD;EACC;;AAGD;EACC;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACC;EACA;EACA;EACA;EACA;EACA;;;AAQN;EACC;IACC","file":"login-monitor.css"}
     1{
     2"version": 3,
     3"mappings": "AAEE,2CAAgB,CACd,OAAO,CAAE,OAAO,CAChB,GAAG,CAAE,GAAG,CAEV,uCAAY,CACV,OAAO,CAAE,MAAM,CAGjB,uEAA4C,CAC1C,MAAM,CAAE,IAAI,CACZ,OAAO,CAAE,CAAC,CAEV,6EAAQ,CACN,KAAK,CAAE,OAAO,CAGhB,yEAAI,CACF,OAAO,CAAE,CAAC,CAGZ,qFAAc,CACZ,MAAM,CAAE,CAAC,CACT,OAAO,CAAE,MAAM,CACf,oGAAiB,CACf,UAAU,CAAE,GAAG,CAEjB,uFAAE,CACA,QAAQ,CAAE,QAAQ,CAClB,OAAO,CAAE,IAAI,CACb,WAAW,CAAE,MAAM,CACnB,MAAM,CAAE,CAAC,CACT,OAAO,CAAE,CAAC,CACV,KAAK,CAAE,IAAI,CAGb,6FAAU,CACR,MAAM,CAAE,OAAO,CAEf,+FAAE,CACA,cAAc,CAAE,IAAI,CAIxB,yFAAI,CACF,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACZ,OAAO,CAAE,CAAC,CACV,MAAM,CAAE,UAAU,CAGpB,0FAAK,CACH,KAAK,CAAE,KAAK,CACZ,SAAS,CAAE,KAAK,CAChB,OAAO,CAAE,CAAC,CACV,MAAM,CAAE,CAAC,CACT,WAAW,CAAE,GAAG,CAChB,UAAU,CAAE,IAAI,CAChB,UAAU,CAAE,SAAS,CACrB,WAAW,CAAE,MAAM,CAM3B,oCAAqC,CACnC,qDAAwD,CACtD,YAAY,CAAE,GAAG,CACjB,aAAa,CAAE,GAAG,CAGpB,0CAA+C,CAC7C,OAAO,CAAE,KAAK,CACd,gDAAQ,CACN,QAAQ,CAAE,MAAM,CAMd,0FAAK,CACH,KAAK,CAAE,OAAO,CACd,SAAS,CAAE,OAAO",
     4"sources": ["login-monitor.scss"],
     5"names": [],
     6"file": "login-monitor.css"
     7}
  • admin-user-control/trunk/css/login-monitor.min.css

    r2311275 r2398471  
    1 @charset "UTF-8";#wp-admin-bar-login-monitor .ab-icon:before{content:"";top:3px}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item{height:auto}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item:hover{color:inherit}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item a{padding:0}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li{vertical-align:bottom;margin-bottom:5px}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li .lm-badge{display:inline-block;line-height:1;border-radius:50%;width:28px;height:28px;text-align:center;margin-right:6px}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li .lm-badge .lm-badge-str{line-height:1;display:inline-block;position:relative;font-weight:bold;font-size:1.25em;top:25%}@media screen and (max-width:782px){#wp-toolbar>ul>#wp-admin-bar-login-monitor{display:block}}
     1@charset "UTF-8";#wp-admin-bar-login-monitor .ab-icon:before{content:"\f110";top:3px}#wp-admin-bar-login-monitor .ab-submenu{padding:10px 0}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item{height:auto;padding:0}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item:hover{color:inherit}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item>a{padding:0}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li{margin:0;padding:0 10px}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li:nth-child(n+2){margin-top:8px}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li a{position:relative;display:flex;align-items:center;margin:0;padding:0;width:100%}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li.no-link{cursor:default}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li.no-link a{pointer-events:none}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li img{width:28px;height:28px;padding:0;margin:0 10px 0 0}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li span{width:240px;max-width:240px;padding:0;margin:0;line-height:1.2;text-align:left;word-break:break-all;white-space:normal}@media screen and (max-width: 782px){#wpadminbar .quicklinks #wp-admin-bar-notifications>a{padding-left:6px;padding-right:6px}#wp-toolbar>ul>#wp-admin-bar-login-monitor{display:block}#wp-toolbar>ul>#wp-admin-bar-login-monitor.hover{position:static}#wp-admin-bar-login-monitor #wp-admin-bar-login-monitor-detail .ab-item ul#lm-list li span{width:inherit;max-width:inherit}}
  • admin-user-control/trunk/css/login-monitor.scss

    r2311275 r2398471  
     1@charset "UTF-8";
    12#wp-admin-bar-login-monitor {
    2     .ab-icon:before {
    3         content: "\f110";
    4         top: 3px;
    5     }
     3  .ab-icon:before {
     4    content: "\f110";
     5    top: 3px;
     6  }
     7  .ab-submenu {
     8    padding: 10px 0;
     9  }
    610
    7     #wp-admin-bar-login-monitor-detail {
    8         .ab-item {
    9             height: auto;
     11  #wp-admin-bar-login-monitor-detail .ab-item {
     12    height: auto;
     13    padding: 0;
    1014
    11             &:hover {
    12                 color: inherit;
    13             }
     15    &:hover {
     16      color: inherit;
     17    }
    1418
    15             a{
    16                 padding: 0;
    17             }
     19    > a {
     20      padding: 0;
     21    }
    1822
    19             ul#lm-list li {
    20                 vertical-align: bottom;
    21                 margin-bottom: 5px;
    22                
    23                 .lm-badge {
    24                     display: inline-block;
    25                     line-height: 1;
    26                     border-radius: 50%;
    27                     width: 28px;
    28                     height: 28px;
    29                     text-align: center;
    30                     margin-right: 6px;
     23    ul#lm-list li {
     24      margin: 0;
     25      padding: 0 10px;
     26      &:nth-child(n+2) {
     27        margin-top: 8px;
     28      }
     29      a {
     30        position: relative;
     31        display: flex;
     32        align-items: center;
     33        margin: 0;
     34        padding: 0;
     35        width: 100%;
     36      }
    3137
    32                     .lm-badge-str {
    33                         line-height: 1;
    34                         display: inline-block;
    35                         position: relative;
    36                         font-weight: bold;
    37                         font-size: 1.25em;
    38                         top: 25%;
    39                     }
    40                 }
    41             }
    42         }
    43     }
     38      &.no-link {
     39        cursor: default;
     40
     41        a {
     42          pointer-events: none;
     43        }
     44      }
     45
     46      img {
     47        width: 28px;
     48        height: 28px;
     49        padding: 0;
     50        margin: 0 10px 0 0;
     51      }
     52
     53      span {
     54        width: 240px;
     55        max-width: 240px;
     56        padding: 0;
     57        margin: 0;
     58        line-height: 1.2;
     59        text-align: left;
     60        word-break: break-all;
     61        white-space: normal;
     62      }
     63    }
     64  }
    4465}
    4566
    4667@media screen and (max-width: 782px) {
    47     #wp-toolbar > ul > #wp-admin-bar-login-monitor {
    48         display: block;
    49     }
     68  #wpadminbar .quicklinks #wp-admin-bar-notifications > a {
     69    padding-left: 6px;
     70    padding-right: 6px;
     71  }
     72
     73  #wp-toolbar > ul > #wp-admin-bar-login-monitor {
     74    display: block;
     75    &.hover {
     76      position: static;
     77    }
     78  }
     79  #wp-admin-bar-login-monitor {
     80    #wp-admin-bar-login-monitor-detail .ab-item {
     81      ul#lm-list li {
     82        span {
     83          width: inherit;
     84          max-width: inherit;
     85        }
     86      }
     87    }
     88  }
    5089}
  • admin-user-control/trunk/js/admin-user-control.js

    r2311275 r2398471  
    4444
    4545                for (let i in json['login-monitor']) {
    46                     const li = document.createElement('li'),
    47                         badge = document.createElement('span'),
    48                         badgeStr = document.createElement('li'),
    49                         name = document.createTextNode(json['login-monitor'][i].display_name);
     46                    const li = document.createElement( 'li' ),
     47                        image = document.createElement( 'img' ),
     48                        name = document.createElement( 'span' );
    5049
    51                     badge.classList.add('lm-badge');
    52                     badge.style.background = '#' + json['login-monitor'][i].color;
     50                    image.src = json[ 'login-monitor' ][ i ].avatar_url
     51                    name.textContent = json[ 'login-monitor' ][ i ].display_name;
    5352
    54                     badgeStr.classList.add('lm-badge-str');
    55                     badgeStr.innerText = json['login-monitor'][i].display_name.substr(0, 1).toUpperCase();
    56                     badge.appendChild(badgeStr);
     53                    if (json['login-monitor'][i].profile_url === null) {
     54                        json['login-monitor'][i].profile_url = '#';
     55                        li.classList.add( 'no-link' );
     56                    }
    5757
    58                     if (json['login-monitor'][i].profile_url !== null) {
    59                         const profileLink = document.createElement('a');
    60                         profileLink.setAttribute('href', json['login-monitor'][i].profile_url);
    61                         profileLink.appendChild(badge);
    62                         profileLink.appendChild(name);
    63                         li.appendChild(profileLink);
    64                     } else {
    65                         li.appendChild(badge);
    66                         li.appendChild(name);
    67                     }
     58                    const profileLink = document.createElement('a');
     59                    profileLink.setAttribute('href', json['login-monitor'][i].profile_url);
     60                    profileLink.appendChild(image);
     61                    profileLink.appendChild(name);
     62                    li.appendChild(profileLink);
    6863
    6964                    ul.appendChild(li);
  • admin-user-control/trunk/js/admin-user-control.min.js

    r2311275 r2398471  
    1 document.addEventListener("DOMContentLoaded",()=>{const wpAdminBarLoginMonitor=document.getElementById("wp-admin-bar-login-monitor");const AdminUserControlRefresh=()=>{fetch(ADMIN_USER_CONTROL_CONST.url,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({action:ADMIN_USER_CONTROL_CONST.action}).toString()}).then(response=>{if(!response.ok){switch(response.status){case 400:throw Error("INVALID TOKEN");case 401:throw Error("UNAUTHORIZED");case 500:throw Error("INTERNAL SERVER ERROR");case 502:throw Error("BAD GATEWAY");case 404:throw Error("NOT FOUND");default:throw Error("UNHANDLED ERROR")}}const contentType=response.headers.get("content-type");if(!contentType||!contentType.includes("application/json")){throw new TypeError("Not JSON")}return response.json()}).then(json=>{if(wpAdminBarLoginMonitor){document.getElementById("lm-cnt").innerText=json["login-monitor"].length;const ul=document.getElementById("lm-list");ul.innerHTML="";for(let i in json["login-monitor"]){const li=document.createElement("li"),badge=document.createElement("span"),badgeStr=document.createElement("li"),name=document.createTextNode(json["login-monitor"][i].display_name);badge.classList.add("lm-badge");badge.style.background="#"+json["login-monitor"][i].color;badgeStr.classList.add("lm-badge-str");badgeStr.innerText=json["login-monitor"][i].display_name.substr(0,1).toUpperCase();badge.appendChild(badgeStr);if(json["login-monitor"][i].profile_url!==null){const profileLink=document.createElement("a");profileLink.setAttribute("href",json["login-monitor"][i].profile_url);profileLink.appendChild(badge);profileLink.appendChild(name);li.appendChild(profileLink)}else{li.appendChild(badge);li.appendChild(name)}ul.appendChild(li)}}if(json["admin-notification"]["is_exist_notification"]){jQuery("#wp-admin-bar-notifications").show()}else{jQuery("#wp-admin-bar-notifications").hide()}if(json["admin-maintenance"]["is_maintenance"]){let modal=document.getElementById("auc-modal");modal.style.display="block";setTimeout(function(){location.href=json["admin-maintenance"]["logout_url"]},1e4);jQuery("#auc-maintenanceEndTime")[0].innerText=" : "+json["admin-maintenance"]["maintenance_end_time"]}}).catch(error=>console.error(error))};setInterval(AdminUserControlRefresh,ADMIN_USER_CONTROL_CONST.lifetime*1e3);AdminUserControlRefresh();const ReadNotification=notificationId=>{fetch(ADMIN_USER_CONTROL_CONST.url,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({action:ADMIN_USER_CONTROL_CONST.readNotificationAction,notificationId:notificationId}).toString()}).then(response=>{if(!response.ok){switch(response.status){case 400:throw Error("INVALID TOKEN");case 401:throw Error("UNAUTHORIZED");case 500:throw Error("INTERNAL SERVER ERROR");case 502:throw Error("BAD GATEWAY");case 404:throw Error("NOT FOUND");default:throw Error("UNHANDLED ERROR")}}const contentType=response.headers.get("content-type");if(!contentType||!contentType.includes("application/json")){throw new TypeError("Not JSON")}return response.json()}).then(json=>{if(json["result"]){jQuery("ul.auc-notification-list li.post[data-postid="+notificationId+"]").removeClass("unread").addClass("read");if(jQuery("ul.auc-notification-list li.post.unread").length===0){jQuery("#wp-admin-bar-notifications").hide()}}}).catch(error=>console.error(error))};jQuery("ul.auc-maintenance-list").on("click","li.post .title",function(){jQuery(this).parents("li.post").toggleClass("open")});jQuery("ul.auc-notification-list").on("click","li.post .title",function(){jQuery(this).parents("li.post").toggleClass("open")});jQuery("ul.auc-notification-list").on("click","li.post .content .read_btn",function(){const postid=jQuery(this).parents("li").attr("data-postid");const regex=/[^0-9]/g;if(null===postid.match(regex)){ReadNotification(postid)}})});
     1document.addEventListener("DOMContentLoaded",()=>{const wpAdminBarLoginMonitor=document.getElementById("wp-admin-bar-login-monitor");const AdminUserControlRefresh=()=>{fetch(ADMIN_USER_CONTROL_CONST.url,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({action:ADMIN_USER_CONTROL_CONST.action}).toString()}).then(response=>{if(!response.ok){switch(response.status){case 400:throw Error("INVALID TOKEN");case 401:throw Error("UNAUTHORIZED");case 500:throw Error("INTERNAL SERVER ERROR");case 502:throw Error("BAD GATEWAY");case 404:throw Error("NOT FOUND");default:throw Error("UNHANDLED ERROR")}}const contentType=response.headers.get("content-type");if(!contentType||!contentType.includes("application/json")){throw new TypeError("Not JSON")}return response.json()}).then(json=>{if(wpAdminBarLoginMonitor){document.getElementById("lm-cnt").innerText=json["login-monitor"].length;const ul=document.getElementById("lm-list");ul.innerHTML="";for(let i in json["login-monitor"]){const li=document.createElement("li"),image=document.createElement("img"),name=document.createElement("span");image.src=json["login-monitor"][i].avatar_url;name.textContent=json["login-monitor"][i].display_name;if(json["login-monitor"][i].profile_url===null){json["login-monitor"][i].profile_url="#";li.classList.add("no-link")}const profileLink=document.createElement("a");profileLink.setAttribute("href",json["login-monitor"][i].profile_url);profileLink.appendChild(image);profileLink.appendChild(name);li.appendChild(profileLink);ul.appendChild(li)}}if(json["admin-notification"]["is_exist_notification"]){jQuery("#wp-admin-bar-notifications").show()}else{jQuery("#wp-admin-bar-notifications").hide()}if(json["admin-maintenance"]["is_maintenance"]){let modal=document.getElementById("auc-modal");modal.style.display="block";setTimeout(function(){location.href=json["admin-maintenance"]["logout_url"]},1e4);jQuery("#auc-maintenanceEndTime")[0].innerText=" : "+json["admin-maintenance"]["maintenance_end_time"]}}).catch(error=>console.error(error))};setInterval(AdminUserControlRefresh,ADMIN_USER_CONTROL_CONST.lifetime*1e3);AdminUserControlRefresh();const ReadNotification=notificationId=>{fetch(ADMIN_USER_CONTROL_CONST.url,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({action:ADMIN_USER_CONTROL_CONST.readNotificationAction,notificationId:notificationId}).toString()}).then(response=>{if(!response.ok){switch(response.status){case 400:throw Error("INVALID TOKEN");case 401:throw Error("UNAUTHORIZED");case 500:throw Error("INTERNAL SERVER ERROR");case 502:throw Error("BAD GATEWAY");case 404:throw Error("NOT FOUND");default:throw Error("UNHANDLED ERROR")}}const contentType=response.headers.get("content-type");if(!contentType||!contentType.includes("application/json")){throw new TypeError("Not JSON")}return response.json()}).then(json=>{if(json["result"]){jQuery("ul.auc-notification-list li.post[data-postid="+notificationId+"]").removeClass("unread").addClass("read");if(jQuery("ul.auc-notification-list li.post.unread").length===0){jQuery("#wp-admin-bar-notifications").hide()}}}).catch(error=>console.error(error))};jQuery("ul.auc-maintenance-list").on("click","li.post .title",function(){jQuery(this).parents("li.post").toggleClass("open")});jQuery("ul.auc-notification-list").on("click","li.post .title",function(){jQuery(this).parents("li.post").toggleClass("open")});jQuery("ul.auc-notification-list").on("click","li.post .content .read_btn",function(){const postid=jQuery(this).parents("li").attr("data-postid");const regex=/[^0-9]/g;if(null===postid.match(regex)){ReadNotification(postid)}})});
  • admin-user-control/trunk/languages/admin-user-control-ja.po

    r2311275 r2398471  
    77"control\n"
    88"POT-Creation-Date: 2020-05-18T02:23:41+00:00\n"
    9 "PO-Revision-Date: 2020-05-18 11:26+0900\n"
     9"PO-Revision-Date: 2020-10-01 19:35+0900\n"
    1010"Last-Translator: \n"
    1111"Language-Team: \n"
     
    1414"Content-Type: text/plain; charset=UTF-8\n"
    1515"Content-Transfer-Encoding: 8bit\n"
    16 "X-Generator: Poedit 2.3\n"
     16"X-Generator: Poedit 2.4.1\n"
    1717"X-Domain: admin-user-control\n"
    1818"Plural-Forms: nplurals=1; plural=0;\n"
     
    8080#: auc-notification.php:26
    8181msgid "New notification"
    82 msgstr "新しいお知らせがあります"
     82msgstr "新しいお知らせ"
    8383
    8484#: auc-notification.php:50
  • admin-user-control/trunk/readme.txt

    r2311275 r2398471  
    55License: GNU General Public License, v2 or higher
    66License URI: http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
    7 Stable tag: 1.0
     7Stable tag: 2.0.0
    88Requires at least: 5.4
    9 Tested up to: 5.4
     9Tested up to: 5.5.1
    1010
    1111This plugin adds a useful feature to the administration screen that allows administrators to control the users involved in their operations.
     
    4141
    4242== Changelog ==
     43
     44= 2.0 =
     45Changed to enable only necessary functions in the settings screen.
     46Added enable/disable setting for toolbars in settings screen.
     47Changed to show user avatar in icon.
     48Added filter hook for user's link URL.
     49Added saving IP address to user meta information when using Ajax communication.
     50A minor bug fix.
     51Tested up to 5.5.1.
     52
    4353= 1.0 =
    4454* first version.
Note: See TracChangeset for help on using the changeset viewer.