WordPress.org

Plugin Directory

Changeset 1788721


Ignore:
Timestamp:
12/18/17 11:35:02 (5 weeks ago)
Author:
hideokamoto
Message:

update v0.5.0

Location:
amimoto-dashboard/trunk
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • amimoto-dashboard/trunk/amimoto-plugin-dashboard.php

    r1518405 r1788721  
    22/** 
    33 * Plugin Name: AMIMOTO Plugin Dashboard 
    4  * Version: 0.4.1 
     4 * Version: 0.5.0 
    55 * Description: Control AMIMOTO helper plugins 
    66 * Author: hideokamoto,amimotoami 
     
    1919define( 'AMI_DASH_ROOT', __FILE__ ); 
    2020 
     21register_activation_hook( __FILE__, 'initializing_amimoto_managed' ); 
     22 
     23function initializing_amimoto_managed() { 
     24    $base = Amimoto_Dash_Base::get_instance(); 
     25    if (!$base->is_amimoto_managed()) { 
     26        return; 
     27    } 
     28    $c3 = Amimoto_C3::get_instance(); 
     29    $result = $c3->update_ncc_settings_for_managed(); 
     30    if ( is_wp_error( $result ) ) { 
     31        error_log( print_r( $result, true ) ); 
     32    } 
     33} 
     34 
    2135$amimoto_dash = Amimoto_Dash::get_instance(); 
    2236$amimoto_dash->init(); 
     
    7488 
    7589    public function admin_theme_style() { 
    76         wp_enqueue_style( 'amimoto-admin-style',  path_join( AMI_DASH_URL, 'assets/admin.css' ) , array() , '2016062301' ); 
     90        wp_enqueue_style( 'amimoto-admin-style', path_join( AMI_DASH_URL, 'assets/admin.css' ) , array() , '2016062301' ); 
    7791    } 
    7892 
     
    93107        if ( isset( $_POST['expires'] ) && $_POST['expires'] ) { 
    94108            wp_redirect( admin_url( 'admin.php?page=nginx-champuru&message=true' ) ); 
    95         } 
     109        } 
    96110 
    97111        $result = false; 
     
    130144        if ( $this->is_trust_post_param( Amimoto_Dash_Base::CLOUDFRONT_UPDATE_NCC ) ) { 
    131145            $c3 = Amimoto_C3::get_instance(); 
    132             $result = $c3->overwrite_ncc_settings(); 
     146            if ( Amimoto_Dash_Base::is_amimoto_managed() ) { 
     147                $result = $c3->update_ncc_settings_for_managed(); 
     148            } else { 
     149                $result = $c3->overwrite_ncc_settings(); 
     150            } 
     151        } 
     152 
     153        if ( $result ) { 
     154            if ( is_wp_error( $result ) ) { 
     155                $this->_show_error( $result ); 
     156            } else if ( isset( $_POST['redirect_page'] ) && $_POST['redirect_page'] ) { 
     157                wp_safe_redirect( menu_page_url( $_POST['redirect_page'], false ) ); 
     158            } else { 
     159                $this->_show_result( $result ); 
     160            } 
    133161        } 
    134162 
    135163        if ( ! is_wp_error( $result ) && $result ) { 
    136             if ( isset( $_POST['redirect_page'] ) && $_POST['redirect_page'] ) { 
    137                 wp_safe_redirect( menu_page_url( $_POST['redirect_page'], false ) ); 
    138             } 
    139         } 
     164 
     165        } 
     166 
     167    } 
     168    /** 
     169     * Show Constole result on wp-admin 
     170     * 
     171     * @access private 
     172     * @param {array} $messages - Result messages. 
     173     * @since 0.0.1 
     174     **/ 
     175    private function _show_result( $messages ) { 
     176        if ( ! is_array( $messages ) ) { 
     177            $messages = array( 
     178                $messages, 
     179            ); 
     180        } 
     181        $default_message = esc_html( __( 'Update completed', 'amimoto-dashboard' ) ); 
     182        if ( empty( $messages ) ) { 
     183            $messages[] = $default_message; 
     184        } 
     185        if ( count($messages) === 1 && ! is_string( $messages[0] ) ) { 
     186            $messages = array( $default_message ); 
     187        } 
     188        ?> 
     189        <div class='notice updated'><ul> 
     190                <?php foreach ( $messages as $key => $message ) : ?> 
     191                    <li> 
     192                        <?php 
     193                            echo esc_html( $message ); 
     194                        ?> 
     195                    </li> 
     196                <?php endforeach; ?> 
     197            </ul></div> 
     198        <?php 
     199    } 
     200 
     201    /** 
     202     * Show error message on wp-admin 
     203     * 
     204     * @access private 
     205     * @param WP_Error $error Wp_error object. 
     206     * @since 4.4.0 
     207     **/ 
     208    private function _show_error( WP_Error $error ) { 
     209        $messages = $error->get_error_messages(); 
     210        $codes = $error->get_error_codes(); 
     211        $code = esc_html( $codes[0] ); 
     212        ?> 
     213        <div class='error'><ul> 
     214                <?php foreach ( $messages as $key => $message ) : ?> 
     215                    <li> 
     216                        <b><?php echo esc_html( $code );?></b> 
     217                        : <?php echo esc_html( $message );?> 
     218                    </li> 
     219                <?php endforeach; ?> 
     220            </ul></div> 
     221        <?php 
    140222    } 
    141223 
  • amimoto-dashboard/trunk/module/base.php

    r1445363 r1788721  
    9696    public function get_amimoto_plugin_file_list() { 
    9797        $amimoto_plugins = array( 
     98            'Nephila clavata' => 'nephila-clavata/plugin.php', 
    9899            'C3 Cloudfront Cache Controller' => 'c3-cloudfront-clear-cache/c3-cloudfront-clear-cache.php', 
    99100            'Nephila clavata' => 'nephila-clavata/plugin.php', 
     
    102103        ); 
    103104        return $amimoto_plugins; 
     105    } 
     106 
     107    /** 
     108     * Check is AMIMOTO Managed mode 
     109     * 
     110     * @return bool 
     111     * @since 0.5.0 
     112     */ 
     113    public static function is_amimoto_managed() { 
     114        if ( isset( $_SERVER['HTTP_X_AMIMOTO_MANAGED'] ) && $_SERVER['HTTP_X_AMIMOTO_MANAGED'] ){ 
     115            return true; 
     116        } 
     117        return false; 
    104118    } 
    105119 
  • amimoto-dashboard/trunk/module/model/c3.php

    r1445363 r1788721  
    6262 
    6363    /** 
     64     * Update Nginx cache config for AMIMOTO Managed 
     65     * 
     66     * @access public 
     67     * @param none 
     68     * @return bool | WP_Error 
     69     * @since 0.5.0 
     70     */ 
     71    public function update_ncc_settings_for_managed() { 
     72        if ( ! $this->is_activated_ncc() ) { 
     73            return new WP_Error( 'AMIMOTO Dashboard Error', 'Nginx Cache Controller Plugin is not activated.' ); 
     74        } 
     75        $this->overwrite_ncc_settings(); 
     76        update_option( 'nginxchampuru-cache_levels', '1:2'); 
     77        update_option( 'nginxchampuru-cache_dir', '/var/cache/nginx/proxy_cache'); 
     78        update_option( 'nginxchampuru-comment', 'single'); 
     79        update_option( 'nginxchampuru-publish', 'almost'); 
     80        update_option( 'nginxchampuru-enable_flush', 1); 
     81    } 
     82 
     83    /** 
    6484     *  Overwrite Nginx Cache Controller Settings 
    6585     * 
     
    7090     */ 
    7191    public function overwrite_ncc_settings() { 
    72         if ( $this->is_activated_ncc() ) { 
    73             $expires = get_option( 'nginxchampuru-cache_expires' ); 
    74             $updated_expires = array(); 
    75             foreach ( $expires as $key => $value ) { 
    76                 $updated_expires[ $key ] = 30; 
    77             } 
    78             update_option( 'nginxchampuru-cache_expires', $updated_expires ); 
     92        if ( ! $this->is_activated_ncc() ) { 
     93            return new WP_Error( 'AMIMOTO Dashboard Error', 'Nginx Cache Controller Plugin is not activated.' ); 
    7994        } 
     95        $expires = get_option( 'nginxchampuru-cache_expires' ); 
     96        $updated_expires = array(); 
     97        foreach ( $expires as $key => $value ) { 
     98            $updated_expires[ $key ] = 30; 
     99        } 
     100        update_option( 'nginxchampuru-cache_expires', $updated_expires ); 
    80101        return true; 
    81102    } 
  • amimoto-dashboard/trunk/module/view/admin.php

    r1460539 r1788721  
    7878     */ 
    7979    private function _get_amimoto_plugin_list() { 
     80        $is_amimoto_managed = $this->is_amimoto_managed(); 
    8081        $plugins = array(); 
    8182        foreach ( $this->amimoto_plugins as $plugin_name => $plugin_url ) { 
     83            if ( $is_amimoto_managed ) { 
     84                if ( 
     85                    $plugin_name === 'C3 Cloudfront Cache Controller' || 
     86                    $plugin_name === 'Nginx Cache Controller on GitHub' || 
     87                    $plugin_name === 'Nginx Cache Controller on WP.org' 
     88                ) { 
     89                    continue; 
     90                } 
     91            } 
    8292            $plugin_file_path = path_join( ABSPATH . 'wp-content/plugins', $plugin_url ); 
    8393            if ( ! file_exists( $plugin_file_path ) ) { 
     
    106116        $active_plugin_urls = $this->_get_activated_plugin_list(); 
    107117        $html .= "<table class='wp-list-table widefat plugins'>"; 
     118        $html .= '<thead>'; 
     119        $html .= "<tr><th colspan='2'><h2>" . __( 'AMIMOTO support plugins', self::$text_domain ). '</h2></th></tr>'; 
     120        $html .= '</thead>'; 
    108121        $html .= '<tbody>'; 
    109122        foreach ( $plugins as $plugin_url => $plugin ) { 
     
    288301    public function get_content_html() { 
    289302        $html = ''; 
     303        if ( $this->is_amimoto_managed() ) { 
     304            $html .= $this->_get_amimoto_managed_cache_control_form(); 
     305            $html .= '<hr/>'; 
     306        } 
    290307        $html .= $this->_get_amimoto_plugin_html(); 
    291308        return $html; 
  • amimoto-dashboard/trunk/module/view/c3-cloudfront-clear-cache.php

    r1508672 r1788721  
    6262    public function get_content_html() { 
    6363        $html = ''; 
    64         $html .= $this->_get_cf_invalidation_form(); 
    65         $html .= $this->_get_cf_setting_form(); 
    66         if ( $this->is_activated_ncc() ) { 
    67             $html .= '<hr/>'; 
    68             $html .= $this->_get_ncc_update_form(); 
     64        if ( $this->is_amimoto_managed() ) { 
     65            $html .= $this->_get_amimoto_managed_cache_control_form(); 
     66        } else { 
     67            $html .= $this->_get_cf_invalidation_form(); 
     68            $html .= $this->_get_cf_setting_form(); 
     69            if ( $this->is_activated_ncc() ) { 
     70                $html .= '<hr/>'; 
     71                $html .= $this->_get_ncc_update_form(); 
     72            } 
    6973        } 
    7074        return apply_filters( 'amimoto_c3_add_settings', $html ); 
     
    133137    } 
    134138 
     139    /** 
     140     * Get CloudFront Distribution Id Form 
     141     * 
     142     * @params string $dist_id CloudFront Distribution Id 
     143     * @return string HTML tag to show Distribution ID input form 
     144     * @access private 
     145     * @since 0.5.0 
     146     */ 
     147    private function __get_cf_dist_input( $dist_id ) { 
     148        $disabled = false; 
     149        if ( $this->is_amimoto_managed() && defined( 'AMIMOTO_CDN_ID' ) ) { 
     150            $disabled = true; 
     151            $dist_id = AMIMOTO_CDN_ID; 
     152        } 
     153        $html = ''; 
     154        $html .= '<tr><th>'. __( 'CloudFront Distribution ID', self::$text_domain ). '</th>'; 
     155        $html .= "<td><input type='text' class='regular-text code' name='c3_settings[distribution_id]' value='{$dist_id}' disabled='{$disabled}' /></td>"; 
     156        $html .= '</tr>'; 
     157        return $html; 
     158    } 
     159 
    135160 
    136161    /** 
     
    155180        } 
    156181        $c3_settings = apply_filters( 'c3_settings', $c3_settings ); 
    157         if ( ( ! isset( $c3_settings['access_key'] ) || ! $c3_settings['access_key'] ) && ( ! isset( $c3_settings['secret_key'] ) || ! $c3_settings['secret_key'] ) ) { 
     182        if ( ! isset( $c3_settings['access_key'] ) && ! isset( $c3_settings['secret_key'] ) ) { 
    158183            $has_ec2_instance_role = true; 
    159184        } 
     
    165190        $html .= '</thead>'; 
    166191        $html .= '<tbody>'; 
    167         $html .= '<tr><th>'. __( 'CloudFront Distribution ID', self::$text_domain ). '</th>'; 
    168         $html .= "<td><input type='text' class='regular-text code' name='c3_settings[distribution_id]' value='{$c3_settings['distribution_id']}' /></td>"; 
    169         $html .= '</tr>'; 
     192        $html .= $this->__get_cf_dist_input($c3_settings['distribution_id']); 
    170193        if ( ! $has_ec2_instance_role ) { 
    171194            $html .= '<tr><th>'. __( 'AWS Access Key', self::$text_domain ). '</th>'; 
  • amimoto-dashboard/trunk/module/view/component.php

    r1460539 r1788721  
    9999        $html  = "<div class='amimoto-dash-side'>"; 
    100100        $html .= $this->_get_amimoto_logo(); 
    101         $html .= $this->_get_zendesk_search_form(); 
     101        $html .= $this->_get_support_search_form(); 
    102102        $html .= $this->_get_amimoto_api_widget( 16 ); 
    103         $html .= $this->_get_amimoto_api_widget( 17 ); 
     103        $html .= $this->_get_amimoto_api_widget( 5 ); 
    104104        $html .= '</div>'; 
    105105        return $html; 
     
    127127 
    128128    /** 
    129      * Search AMIMOTO FAQ (ZenDesk) 
     129     * Search AMIMOTO FAQ (Intercom) 
    130130     * 
    131131     * @access private 
    132132     * @return string 
    133      * @since 0.2.0 
     133     * @since 0.5.0 
    134134     **/ 
    135     private function _get_zendesk_search_form() { 
     135    private function _get_support_search_form() { 
    136136        $html  = ''; 
    137137        $html .= "<div class='postbox'>"; 
    138138        $html .= "<div class='hndle'><h3 class='amimoto-logo-title'>". __( 'Search AMIMOTO FAQ', self::$text_domain ). '</h3></div>'; 
    139139        $html .= "<div class='inside'>"; 
    140         $html .= "<form role='search' class='' data-search='' data-instant='true' autocomplete='off' action='https://amimoto.zendesk.com/hc/en-us/search' accept-charset='UTF-8' method='get'>"; 
    141         $html .= "<input name='utf8' type='hidden' value='✓'>"; 
    142         $html .= "<input type='search' name='query' id='query' placeholder='Search' autocomplete='off'>"; 
    143         $html .= "<input type='submit' name='commit' class='button' value='Search'>"; 
     140        $html .= "<form role='search' class='' action='https://support.amimoto-ami.com/' method='get'>"; 
     141        $html .= '<p class="">'; 
     142        $html .= '<label class="screen-reader-text" for="amimoto-support-input">AMIMOTO Support Search:</label>'; 
     143        $html .= '<input type="search" id="amimoto-support-input" name="q" value="" placeholder="Search">'; 
     144        $html .= '<input type="submit" id="search-submit" class="button" value="Search">'; 
     145        $html .= '</p>'; 
    144146        $html .= "</form>"; 
    145147        $html .= '</div>'; 
     
    147149        return $html; 
    148150    } 
     151 
     152    /** 
     153     *  Get AMIMOTO Managed cache control HTML 
     154     * 
     155     * @access protected 
     156     * @param none 
     157     * @return string HTML tag to show cache control form 
     158     * @since 0.5.0 
     159     */ 
     160    protected function _get_amimoto_managed_cache_control_form() { 
     161        $html = ''; 
     162        if ( ! $this->is_amimoto_managed() ) { 
     163            return $html; 
     164        } 
     165        $html .= "<table class='wp-list-table widefat plugins'>"; 
     166        $html .= '<thead>'; 
     167        $html .= "<tr><th colspan='2'><h2>" . __( 'AMIMOTO Cache Control', self::$text_domain ). '</h2></th></tr>'; 
     168        $html .= '</thead>'; 
     169        $html .= '<tbody>'; 
     170        $html .= '<tr><th><b>'. __( 'Flush All CDN Cache', self::$text_domain ). '</b>'; 
     171        $html .= '<p></p></th>'; 
     172        $html .= '<td>'; 
     173        $html .= "<form method='post' action=''>"; 
     174        $html .= "<input type='hidden' name='invalidation_target' value='all' />"; 
     175        $html .= wp_nonce_field( self::CLOUDFRONT_INVALIDATION , self::CLOUDFRONT_INVALIDATION , true , false ); 
     176        $html .= get_submit_button( __( 'Flush All CDN Cache', self::$text_domain ) ); 
     177        $html .= '</form>'; 
     178        $html .= '</td>'; 
     179        $html .= '</tr>'; 
     180        $html .= '<tr><th><b>'. __( 'Reset Nginx Cache Setting', self::$text_domain ). '</b>'; 
     181        $html .= '<p>' . __( 'All Nginx Cache Expires change 30sec.', self::$text_domain ) . '</p></th>'; 
     182        $html .= '<td>'; 
     183        $html .= "<form method='post' action=''>"; 
     184        $html .= "<input type='hidden' name='invalidation_target' value='all' />"; 
     185        $html .= wp_nonce_field( self::CLOUDFRONT_UPDATE_NCC , self::CLOUDFRONT_UPDATE_NCC , true , false ); 
     186        $html .= get_submit_button( __( 'Reset Nginx Cache Setting', self::$text_domain ) ); 
     187        $html .= '</form>'; 
     188        $html .= '</td>'; 
     189        $html .= '</tr>'; 
     190        $html .= '</tbody></table>'; 
     191        return $html; 
     192    } 
     193 
    149194    /** 
    150195     *  Create AMIMOTO News Widget html 
     
    163208        switch ( $category_id ) { 
    164209            case 16: 
    165                 $title = __( 'Road to Becoming the AMIMOTO Master', self::$text_domain ); 
     210                $title = __( 'AMIMOTO Essential Training', self::$text_domain ); 
    166211                break; 
    167212 
    168             case 17: 
     213            case 5: 
    169214                $title = __( 'AMIMOTO News', self::$text_domain ); 
    170215                break; 
  • amimoto-dashboard/trunk/module/view/menus.php

    r1445363 r1788721  
    117117     */ 
    118118    public function define_menus() { 
     119        $is_amimoto_managed = Amimoto_Dash_Base::is_amimoto_managed(); 
    119120        $base = Amimoto_Dash_Admin::get_instance(); 
    120121        add_menu_page( 
     
    127128            3 
    128129        ); 
    129         $amimoto_plugins = $this->get_amimoto_plugin_file_list(); 
    130         $active_plugin_urls = get_option( 'active_plugins' ); 
    131         if ( array_search( $amimoto_plugins['C3 Cloudfront Cache Controller'], $active_plugin_urls ) ) { 
    132             $c3 = Amimoto_Dash_Cloudfront::get_instance(); 
    133             add_submenu_page( 
    134                 self::PANEL_ROOT, 
    135                 __( 'C3 Cloudfront Cache Controller', self::$text_domain ), 
    136                 __( 'CloudFront', self::$text_domain ), 
    137                 'administrator', 
    138                 self::PANEL_C3, 
    139                 array( $c3, 'init_panel' ) 
    140             ); 
    141         } 
    142  
    143         if ( array_search( $amimoto_plugins['Nephila clavata'], $active_plugin_urls ) ) { 
    144             $plugin_file_path = path_join( ABSPATH , 'wp-content/plugins/nephila-clavata/includes/class-NephilaClavata_Admin.php' ); 
    145             require_once( $plugin_file_path ); 
    146             $nephila_clavata_admin = NephilaClavata_Admin::get_instance(); 
    147             add_submenu_page( 
    148                 self::PANEL_ROOT, 
    149                 __( 'Nephila clavata', self::$text_domain ), 
    150                 __( 'Amazon S3', self::$text_domain ), 
    151                 'administrator', 
    152                 self::PANEL_S3, 
    153                 array( $nephila_clavata_admin, 'options_page' ) 
    154             ); 
    155             add_filter('nephila_clavata_admin_url',function(){ return 'admin.php'; } ); 
    156         } 
    157  
    158         if ( array_search( $amimoto_plugins['Nginx Cache Controller on GitHub'], $active_plugin_urls ) || 
    159              array_search( $amimoto_plugins['Nginx Cache Controller on WP.org'], $active_plugin_urls ) ) { 
    160             $plugin_file_path = path_join( ABSPATH , 'wp-content/plugins/nginx-champuru/includes/admin.class.php' ); 
    161             if ( ! file_exists( $plugin_file_path ) ) { 
    162                 $plugin_file_path = path_join( ABSPATH , 'wp-content/plugins/nginx-cache-controller/includes/admin.class.php' ); 
    163             } 
    164             if ( file_exists( $plugin_file_path ) ) { 
    165                 require_once( $plugin_file_path ); 
    166                 $nginxchampuru_admin = NginxChampuru_Admin::get_instance(); 
     130        if ( ! $is_amimoto_managed ) { 
     131            $amimoto_plugins = $this->get_amimoto_plugin_file_list(); 
     132            $active_plugin_urls = get_option( 'active_plugins' ); 
     133            if ( array_search( $amimoto_plugins['C3 Cloudfront Cache Controller'], $active_plugin_urls ) ) { 
     134                $menu_label = __( 'CloudFront', self::$text_domain ); 
     135                if ( $is_amimoto_managed ) { 
     136                    $menu_label = __('CDN Cache', self::$text_domain ); 
     137                } 
     138                $c3 = Amimoto_Dash_Cloudfront::get_instance(); 
    167139                add_submenu_page( 
    168140                    self::PANEL_ROOT, 
    169                     __( 'Nginx Cache Controller', self::$text_domain ), 
    170                     __( 'Nginx Reverse Proxy', self::$text_domain ), 
     141                    __( 'C3 Cloudfront Cache Controller', self::$text_domain ), 
     142                    $menu_label, 
    171143                    'administrator', 
    172                     self::PANEL_NCC, 
    173                     array( $nginxchampuru_admin, "admin_panel") 
     144                    self::PANEL_C3, 
     145                    array( $c3, 'init_panel' ) 
    174146                ); 
     147            } 
     148 
     149            if ( array_search( $amimoto_plugins['Nephila clavata'], $active_plugin_urls ) ) { 
     150                $plugin_file_path = path_join( ABSPATH, 'wp-content/plugins/nephila-clavata/includes/class-NephilaClavata_Admin.php' ); 
     151                require_once( $plugin_file_path ); 
     152                $nephila_clavata_admin = NephilaClavata_Admin::get_instance(); 
     153                add_submenu_page( 
     154                    self::PANEL_ROOT, 
     155                    __( 'Nephila clavata', self::$text_domain ), 
     156                    __( 'Amazon S3', self::$text_domain ), 
     157                    'administrator', 
     158                    self::PANEL_S3, 
     159                    array( $nephila_clavata_admin, 'options_page' ) 
     160                ); 
     161                add_filter( 'nephila_clavata_admin_url', function () { 
     162                    return 'admin.php'; 
     163                } ); 
     164            } 
     165 
     166            if ( array_search( $amimoto_plugins['Nginx Cache Controller on GitHub'], $active_plugin_urls ) || 
     167                 array_search( $amimoto_plugins['Nginx Cache Controller on WP.org'], $active_plugin_urls ) 
     168            ) { 
     169                $plugin_file_path = path_join( ABSPATH, 'wp-content/plugins/nginx-champuru/includes/admin.class.php' ); 
     170                if ( ! file_exists( $plugin_file_path ) ) { 
     171                    $plugin_file_path = path_join( ABSPATH, 'wp-content/plugins/nginx-cache-controller/includes/admin.class.php' ); 
     172                } 
     173                if ( file_exists( $plugin_file_path ) ) { 
     174                    require_once( $plugin_file_path ); 
     175                    $nginxchampuru_admin = NginxChampuru_Admin::get_instance(); 
     176                    add_submenu_page( 
     177                        self::PANEL_ROOT, 
     178                        __( 'Nginx Cache Controller', self::$text_domain ), 
     179                        __( 'Nginx Reverse Proxy', self::$text_domain ), 
     180                        'administrator', 
     181                        self::PANEL_NCC, 
     182                        array( $nginxchampuru_admin, "admin_panel" ) 
     183                    ); 
     184                } 
    175185            } 
    176186        } 
  • amimoto-dashboard/trunk/readme.txt

    r1518402 r1788721  
    44Tags: admin,amimoto 
    55Requires at least: 4.4.0 
    6 Tested up to: 4.6.1 
    7 Stable tag: 0.4.1 
     6Tested up to: 4.9.1 
     7Stable tag: 0.5.0 
    88License: GPLv2 or later 
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html 
     
    3939== Changelog == 
    4040 
     41= 0.5.0 = 
     42* Fix small bug 
     43* Add some feature for AMIMOTO Managed hosting user 
     44 
     45= 0.4.1 = 
     46* Re-set c3_settings filter for old jinkei stack 
     47 
    4148= 0.4.0 = 
    4249* Add  filter to add CloudFront content 
     
    5663== Upgrade Notice == 
    5764 
    58 = 0.4.1 = 
    59 * Re-set c3_settings filter for old jinkei stack 
     65= 0.5.0 = 
     66* Fix small bug 
     67* Add some feature for AMIMOTO Managed hosting user 
Note: See TracChangeset for help on using the changeset viewer.