Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update process tweaks #450

Closed
wants to merge 74 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
74 commits
Select commit Hold shift + click to select a range
326dae3
Initial commit
frankiejarrett Jan 7, 2014
4e28b0d
Get featured image remotely
frankiejarrett Jan 8, 2014
aed85b2
Merge branch 'master' into extensions
frankiejarrett Jan 8, 2014
355cca9
Proper check to see if plugin exists
frankiejarrett Jan 8, 2014
d021b42
Fix fallbacks when remote fetched data exists but is empty
frankiejarrett Jan 8, 2014
ac0dfb2
Merge branch 'master' into extensions
frankiejarrett Jan 13, 2014
b3b23f1
Add extension list to readme
frankiejarrett Jan 13, 2014
178fa4d
Merge branch 'master' into extensions
frankiejarrett Feb 4, 2014
80b6421
Merge branch 'develop' into extensions
frankiejarrett Feb 6, 2014
1a47839
Fetch extensions from vvv JSON REST API
frankiejarrett Feb 6, 2014
10a9df2
Adding license key field to extensions screen
frankiejarrett Feb 7, 2014
bf42f52
Merge branch 'master' into extensions
frankiejarrett Feb 22, 2014
e1f4189
Updating UI
frankiejarrett Feb 22, 2014
5245cff
Merge branch 'master' into extensions
shadyvb Feb 26, 2014
fe3716c
Merge branch 'develop' into extensions
shadyvb Feb 26, 2014
8c9e300
Merge branch 'develop' into extensions
shadyvb Feb 26, 2014
1c158df
Move updater.php to Stream core
shadyvb Feb 26, 2014
1f743c6
Add none checks
shadyvb Feb 27, 2014
2678637
Code formatting, add join URL
frankiejarrett Feb 27, 2014
e65502f
Improvements to extensions page layout
frankiejarrett Feb 27, 2014
0074bda
Make title less verbose
frankiejarrett Feb 27, 2014
1251779
Fix where phpcs was failing for alternate control structure
frankiejarrett Feb 27, 2014
2b509db
Merge branch 'develop' into extensions
frankiejarrett Feb 27, 2014
fea9f17
Style tweak
frankiejarrett Feb 28, 2014
aef7c16
Make login modal size mobile friendly
frankiejarrett Feb 28, 2014
abb6004
Merge branch 'develop' into extensions
shadyvb Mar 3, 2014
41b6114
Add extension download routine
shadyvb Mar 3, 2014
89f10f1
Cache extension list in transients
shadyvb Mar 3, 2014
a30f0c7
Merge branch 'develop' into extensions
frankiejarrett Mar 13, 2014
8d303db
Trying to appease the sniffs
frankiejarrett Mar 13, 2014
9d80985
Issue #396 Admin Extension Screen
Apr 10, 2014
d18f0d0
Issue #396 Extensions page
Apr 10, 2014
eb84200
Added filters and links for installing and activating extensions
Apr 11, 2014
f2357cd
Add extension download domain to white list to prevent failure
Apr 12, 2014
d8693fb
Added filter to pre_set_site_transient_update_plugins to check for up…
Apr 12, 2014
68dea0b
Merge branch 'develop' into issue-396
frankiejarrett Apr 14, 2014
b956d61
Added correct wp_nonce actions to install and activate links
Apr 15, 2014
757238c
Merge branch 'extensions' into issue-396
Apr 16, 2014
ffceb5d
Fixing merge conflicts
Apr 16, 2014
80cec28
Merging update methods into extensions class
Apr 16, 2014
15d342b
Merge remote-tracking branch 'origin/issue-396' into issue-400
shadyvb Apr 17, 2014
b04ad31
resolve conflicts from merge of extensions branch
Apr 17, 2014
e3afdd7
Remove div from render_page.
Apr 17, 2014
c8f1478
Merge branch 'develop' into issue-396
frankiejarrett Apr 19, 2014
9950cab
Adding extensions.js file
Apr 22, 2014
01142a8
Update Extensions screen to use custom jQuery instead of theme backbo…
Apr 22, 2014
5bec06e
Move screen shot into correct div
Apr 22, 2014
d3e1ecf
Fixing merge conflicts
Apr 22, 2014
9096fa3
Add missing EXTENSIONS_PAGE_SLUG const.
Apr 22, 2014
2581e58
Change wp-json endpoint from wp-json.php to wp-json
Apr 23, 2014
75fc06b
Adjusted overlay template to mimic themes browser overlay
Apr 23, 2014
755360f
Update prepare_extensions_for_js method
Apr 23, 2014
19eb538
Merge remote-tracking branch 'origin/issue-396' into issue-400
shadyvb Apr 24, 2014
4810dd7
Remove update package url if no license key is found, show notice to …
shadyvb Apr 24, 2014
3d47ffa
Invalidate plugin update transient after connect, so we get update pa…
shadyvb Apr 24, 2014
d7a3030
Invalidate plugin-update transient on license removal as well
shadyvb Apr 24, 2014
08b5086
Javascript clean up and condense code
Apr 24, 2014
a69cf47
Initiate Extensions class on plugins_loaded
Apr 24, 2014
a86ae84
Remove extra extensions localize_script data not needed
Apr 24, 2014
a3b50ba
PHP Documentation and removal of not needed class properties
Apr 24, 2014
aaa5700
Changed css code comment message
Apr 24, 2014
475f522
Switch to get/update_{site_}_option for multisite support
shadyvb Apr 24, 2014
526600d
Merge remote-tracking branch 'origin/issue-396' into issue-400
shadyvb Apr 24, 2014
bb7e4c9
Add theme actions to bottom of overlay popup
Apr 24, 2014
c7e4f69
Merge remote-tracking branch 'origin/develop' into issue-400
shadyvb Apr 24, 2014
b0e0651
Put extension name in h3 tags
Apr 24, 2014
a2c215a
Merge branch 'issue-400' into issue-396
Apr 24, 2014
75139fb
Trigger extension data update on plugin-update routine
shadyvb Apr 24, 2014
113749d
Change stream-license to wp-stream-license
shadyvb Apr 24, 2014
6883ddb
Replace hard coded urls with class constants
Apr 24, 2014
9dc7fc4
Merge remote-tracking branch 'origin/issue-396' into issue-396
Apr 24, 2014
127f1b0
jshint fix for Travis ci fail on global js variable
Apr 24, 2014
61d7002
Use proper wp_stream_ prefix on option keys and hook names
frankiejarrett Apr 24, 2014
127918f
Merge branch 'issue-396' into issue-400
frankiejarrett Apr 24, 2014
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
100 changes: 93 additions & 7 deletions includes/admin.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,14 @@ class WP_Stream_Admin {
*/
public static $disable_access = false;

const ADMIN_BODY_CLASS = 'wp_stream_screen';
const RECORDS_PAGE_SLUG = 'wp_stream';
const SETTINGS_PAGE_SLUG = 'wp_stream_settings';
const ADMIN_PARENT_PAGE = 'admin.php';
const VIEW_CAP = 'view_stream';
const SETTINGS_CAP = 'manage_options';
const PRELOAD_AUTHORS_MAX = 50;
const ADMIN_BODY_CLASS = 'wp_stream_screen';
const RECORDS_PAGE_SLUG = 'wp_stream';
const SETTINGS_PAGE_SLUG = 'wp_stream_settings';
const EXTENSIONS_PAGE_SLUG = 'wp_stream_extensions';
const ADMIN_PARENT_PAGE = 'admin.php';
const VIEW_CAP = 'view_stream';
const SETTINGS_CAP = 'manage_options';
const PRELOAD_AUTHORS_MAX = 50;

public static function load() {
// User and role caps
Expand Down Expand Up @@ -134,6 +135,17 @@ public static function register_menu() {
array( __CLASS__, 'render_page' )
);

self::$screen_id['extensions'] = add_submenu_page(
self::RECORDS_PAGE_SLUG,
__( 'Stream Extensions', 'stream' ),
__( 'Extensions', 'stream' ),
self::SETTINGS_CAP,
self::EXTENSIONS_PAGE_SLUG,
array( __CLASS__, 'render_extensions_page' )
);

// Register the list table early, so it associates the column headers with 'Screen settings'
add_action( 'load-' . self::$screen_id['main'], array( __CLASS__, 'register_list_table' ) );
do_action( 'wp_stream_admin_menu_screens' );

// Register the list table early, so it associates the column headers with 'Screen settings'
Expand Down Expand Up @@ -417,6 +429,80 @@ public static function render_page() {
<?php
}

/**
* Render extensions page
*
* @return void
*/
public static function render_extensions_page() {

$extensions = WP_Stream_Extensions::get_instance();

if ( $install = wp_stream_filter_input( INPUT_GET, 'install' ) ) {
return self::render_extension_download_page( $install );
}

wp_enqueue_style( 'thickbox' );
wp_enqueue_script(
'stream-activation',
plugins_url( '../ui/license.js', __FILE__ ),
array( 'jquery', 'thickbox' ),
WP_Stream::VERSION,
true
);
wp_enqueue_script(
'stream-extensions',
plugins_url( '../ui/extensions.js', __FILE__ ),
array( 'jquery' ),
WP_Stream::VERSION,
true
);
$action = 'license';
wp_localize_script(
'stream-activation',
'stream_activation',
array(
'action' => get_site_option( 'wp_stream_license' ) ? 'disconnect' : 'connect',
'api' => array(
'connect' => apply_filters( 'stream-api-url', WP_Stream_Updater::instance()->get_api_url() . 'connect', 'connect' ),
'disconnect' => apply_filters( 'stream-api-url', WP_Stream_Updater::instance()->get_api_url() . 'disconnect', 'disconnect' ),
'disconnect_local' => add_query_arg( 'action', 'stream-license-remove', admin_url( 'admin-ajax.php' ) ),
),
'nonce' => array(
'license_check' => wp_create_nonce( 'license_check' ),
'license_remove' => wp_create_nonce( 'license_remove' ),
),
'i18n' => array(
'connected' => __( 'Connected', 'stream' ),
'login_to_stream' => __( 'Connect to Stream Premium', 'stream' ),
),
)
);
wp_localize_script( 'stream-extensions', 'stream_extensions', array( 'extensions' => $extensions->prepare_extensions_for_js( $extensions->extensions ) ) );
add_thickbox();
?>
<div class="themes-php">
<div class="wrap">
<?php $extensions->render_page() ?>
</div>
</div>
<?php
}

public static function render_extension_download_page( $extension ) {
add_filter(
'install_plugin_complete_actions',
function( $actions ) {
echo sprintf(
'<a href="%s">%s</a>',
remove_query_arg( 'install' ),
esc_html__( 'Return to Stream Extensions', 'stream' )
); // xss okay
}
);
WP_Stream_Updater::instance()->install_extension( $extension );
}

public static function register_list_table() {
require_once WP_STREAM_INC_DIR . 'list-table.php';
self::$list_table = new WP_Stream_List_Table( array( 'screen' => self::$screen_id['main'] ) );
Expand Down
Loading