Skip to content

Commit

Permalink
Plugins: remove business plugins (cleanup)
Browse files Browse the repository at this point in the history
  • Loading branch information
Tug committed Feb 8, 2016
2 parents 414f035 + 666e54e commit 52e2d4d
Show file tree
Hide file tree
Showing 21 changed files with 153 additions and 350 deletions.
1 change: 0 additions & 1 deletion assets/stylesheets/_components.scss
Original file line number Diff line number Diff line change
Expand Up @@ -218,7 +218,6 @@
@import 'my-sites/plugins/plugin-site-disabled-manage/style';
@import 'my-sites/plugins/plugin-site-jetpack/style';
@import 'my-sites/plugins/plugin-site-update-indicator/style';
@import 'my-sites/plugins/plugin-site-business/style';
@import 'my-sites/plugins/plugin-install-button/style';
@import 'my-sites/plugins/plugin-settings-link/style';
@import 'my-sites/plugins/plugin-remove-button/style';
Expand Down
3 changes: 1 addition & 2 deletions client/lib/plugins/actions.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ var debug = require( 'debug' )( 'calypso:my-sites:plugins:actions' ),
*/
var analytics = require( 'analytics' ),
Dispatcher = require( 'dispatcher' ),
isBusiness = require( 'lib/products-values' ).isBusiness,
wpcom = require( 'lib/wp' ).undocumented();

var _actionsQueueBySite = {},
Expand Down Expand Up @@ -133,7 +132,7 @@ PluginsActions = {
},

fetchSitePlugins: function( site ) {
if ( ! site.user_can_manage || ( ! site.jetpack && ! isBusiness( site.plan ) ) ) {
if ( ! site.user_can_manage || ! site.jetpack ) {
defer( () => {
Dispatcher.handleViewAction( {
type: 'NOT_ALLOWED_TO_RECEIVE_PLUGINS',
Expand Down
4 changes: 4 additions & 0 deletions client/lib/plugins/store.js
Original file line number Diff line number Diff line change
Expand Up @@ -218,6 +218,10 @@ PluginsStore = {

// Get Plugins for a single site
getSitePlugins: function( site ) {
if ( ! site.jetpack ) {
return [];
}

var storedList;
if ( ! _pluginsBySite[ site.ID ] && ! _fetching[ site.ID ] ) {
storedList = getPluginsBySiteFromStorage( site.ID );
Expand Down
3 changes: 1 addition & 2 deletions client/lib/sites-list/list.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ var wpcom = require( 'lib/wp' ),
JetpackSite = require( 'lib/site/jetpack' ),
Searchable = require( 'lib/mixins/searchable' ),
Emitter = require( 'lib/mixins/emitter' ),
isBusiness = require( 'lib/products-values' ).isBusiness,
isPlan = require( 'lib/products-values' ).isPlan,
PreferencesActions = require( 'lib/preferences/actions' ),
PreferencesStore = require( 'lib/preferences/store' ),
Expand Down Expand Up @@ -554,7 +553,7 @@ SitesList.prototype.getSelectedOrAllWithPlugins = function() {
return this.getSelectedOrAll().filter( site => {
return site.capabilities &&
site.capabilities.manage_options &&
( isBusiness( site.plan ) || site.jetpack ) &&
site.jetpack &&
( site.visible || this.selected )
} );
};
Expand Down
33 changes: 3 additions & 30 deletions client/my-sites/plugins/controller.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,7 @@ var lastPluginsListVisited,
lastPluginsQuerystring,
controller;

const businessPlugins = [ 'gumroad', 'shopify-store', 'ecwid' ];

function renderSinglePlugin( context, siteUrl, isWpcomPlugin ) {
function renderSinglePlugin( context, siteUrl ) {
var pluginSlug = decodeURIComponent( context.params.plugin ),
site = sites.getSelectedSite(),
analyticsPageTitle = 'Plugins',
Expand All @@ -43,29 +41,6 @@ function renderSinglePlugin( context, siteUrl, isWpcomPlugin ) {
baseAnalyticsPath += '/:site';
}

if ( site &&
site.jetpack &&
context.path.indexOf( '/business' ) >= 0 &&
businessPlugins.indexOf( pluginSlug ) >= 0
) {
return page.redirect( '/plugins/' + pluginSlug + '/' + site.slug );
}

if (
( site && ! site.jetpack ) &&
businessPlugins.indexOf( pluginSlug ) >= 0 &&
context.path.indexOf( '/business' ) < 0
) {
return page.redirect( '/plugins/' + pluginSlug + '/business' + ( site ? '/' + site.slug : '' ) );
}

if ( ! site &&
context.path.indexOf( '/business' ) >= 0 &&
-1 === businessPlugins.indexOf( pluginSlug )
) {
return page.redirect( '/plugins/' + pluginSlug );
}

analytics.pageView.record( baseAnalyticsPath, analyticsPageTitle + ' > Plugin Details' );

// Scroll to the top
Expand All @@ -80,7 +55,6 @@ function renderSinglePlugin( context, siteUrl, isWpcomPlugin ) {
sites: sites,
pluginSlug: pluginSlug,
siteUrl: siteUrl,
isWpcomPlugin: isWpcomPlugin,
onPluginRefresh: title => titleActions.setTitle( title )
} ),
document.getElementById( 'primary' ),
Expand Down Expand Up @@ -182,16 +156,15 @@ controller = {
},

plugin: function( context ) {
var isWpcomPlugin = 'business' === context.params.business_plugin,
siteUrl = route.getSiteFragment( context.path );
var siteUrl = route.getSiteFragment( context.path );

if ( siteUrl && context.params.plugin && context.params.plugin === siteUrl.toString() ) {
controller.plugins( 'all', context );
return;
}

notices.clearNotices( 'notices' );
renderSinglePlugin( context, siteUrl, isWpcomPlugin );
renderSinglePlugin( context, siteUrl );
},

browsePlugins: function( context ) {
Expand Down
14 changes: 7 additions & 7 deletions client/my-sites/plugins/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,20 +12,20 @@ var controller = require( 'my-sites/controller' ),

module.exports = function() {
if ( config.isEnabled( 'manage/plugins/browser' ) ) {
page( '/plugins/browse/:category/:site', controller.siteSelection, controller.navigation, controller.awaitSiteLoaded, controller.isJetpackSite, pluginsController.browsePlugins );
page( '/plugins/browse/:siteOrCategory?', controller.siteSelection, controller.navigation, controller.awaitSiteLoaded, controller.isJetpackSite, pluginsController.browsePlugins );
page( '/plugins/browse/:category/:site', controller.siteSelection, controller.navigation, pluginsController.browsePlugins );
page( '/plugins/browse/:siteOrCategory?', controller.siteSelection, controller.navigation, pluginsController.browsePlugins );
}

if ( config.isEnabled( 'manage/plugins/setup' ) ) {
page( '/plugins/setup', controller.siteSelection, controller.navigation, controller.awaitSiteLoaded, controller.isJetpackSite, pluginsController.setupPlugins );
page( '/plugins/setup/:site', controller.siteSelection, controller.navigation, controller.awaitSiteLoaded, controller.isJetpackSite, pluginsController.setupPlugins );
page( '/plugins/setup', controller.siteSelection, controller.navigation, pluginsController.setupPlugins );
page( '/plugins/setup/:site', controller.siteSelection, controller.navigation, pluginsController.setupPlugins );
}

if ( config.isEnabled( 'manage/plugins' ) ) {
page( '/plugins', controller.siteSelection, controller.navigation, controller.awaitSiteLoaded, controller.isJetpackSite, pluginsController.plugins.bind( null, 'all' ) );
page( '/plugins', controller.siteSelection, controller.navigation, pluginsController.plugins.bind( null, 'all' ) );
[ 'active', 'inactive', 'updates' ].forEach( function( filter ) {
page( '/plugins/' + filter + '/:site_id?', controller.siteSelection, controller.navigation, controller.awaitSiteLoaded, controller.isJetpackSite, pluginsController.jetpackCanUpdate.bind( null, filter ), pluginsController.plugins.bind( null, filter ) );
page( '/plugins/' + filter + '/:site_id?', controller.siteSelection, controller.isJetpackSite, pluginsController.jetpackCanUpdate.bind( null, filter ), pluginsController.plugins.bind( null, filter ) );
} );
page( '/plugins/:plugin/:business_plugin?/:site_id?', controller.siteSelection, controller.navigation, controller.awaitSiteLoaded, controller.isJetpackSite, pluginsController.plugin );
page( '/plugins/:plugin/:business_plugin?/:site_id?', controller.siteSelection, controller.isJetpackSite, pluginsController.plugin );
}
};
46 changes: 12 additions & 34 deletions client/my-sites/plugins/main.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -90,25 +90,18 @@ const PluginsMain = React.createClass( {
// plugins for Jetpack sites require additional data from the wporg-data store
addWporgDataToPlugins( plugins ) {
return plugins.map( plugin => {
if ( ! plugin.wpcom ) {
let pluginData = WporgPluginsSelectors.getPlugin( this.props.wporgPlugins, plugin.slug );
if ( !pluginData ) {
this.props.wporgFetchPluginData( plugin.slug );
}
return assign( {}, plugin, pluginData );
let pluginData = WporgPluginsSelectors.getPlugin( this.props.wporgPlugins, plugin.slug );
if ( !pluginData ) {
this.props.wporgFetchPluginData( plugin.slug );
}
return plugin;
return assign( {}, plugin, pluginData );
} );
},

getJetpackPlugins() {
getWporgPlugins() {
return reject( this.state.plugins, property( 'wpcom' ) );
},

getWpcomPlugins() {
return filter( this.state.plugins, property( 'wpcom' ) );
},

getPluginsState( nextProps ) {
const sites = this.props.sites.getSelectedOrAllWithPlugins(),
pluginUpdate = PluginsStore.getPlugins( sites, 'updates' );
Expand Down Expand Up @@ -261,21 +254,14 @@ const PluginsMain = React.createClass( {
return some( this.props.sites.getSelectedOrAllWithPlugins(), site => site && site.jetpack && site.canUpdateFiles );
},

shouldShowPluginListPlaceholders( isWpCom ) {
shouldShowPluginListPlaceholders() {
const { plugins } = this.state;
const { sites } = this.props;

let showPlaceholders = isEmpty( plugins ) && this.isFetchingPlugins();

if ( showPlaceholders && isWpCom === get( sites.getSelectedSite(), 'jetpack' ) ) {
return false;
}
return showPlaceholders;
return isEmpty( plugins ) && this.isFetchingPlugins();
},

renderPluginsContent() {
const plugins = this.state.plugins || [];
const selectedSite = this.props.sites.getSelectedSite();

if ( isEmpty( plugins ) && ! this.isFetchingPlugins() ) {
if ( this.props.search ) {
Expand All @@ -296,21 +282,13 @@ const PluginsMain = React.createClass( {
}
return (
<div className="plugins__lists">
{ ( ! selectedSite || selectedSite.jetpack === false ) && <PluginsList
header={ this.translate( 'WordPress.com Plugins' ) }
plugins={ this.getWpcomPlugins() }
isWpCom= { true }
sites={ this.props.sites }
selectedSite={ selectedSite }
isPlaceholder= { this.shouldShowPluginListPlaceholders( true ) } /> }
{ ( ! selectedSite || selectedSite.jetpack === true ) && <PluginsList
<PluginsList
header={ this.translate( 'Plugins' ) }
plugins={ this.getJetpackPlugins() }
isWpCom={ false }
plugins={ this.getWporgPlugins() }
sites={ this.props.sites }
selectedSite={ this.props.sites.getSelectedSite() }
pluginUpdateCount={ this.state.pluginUpdateCount }
isPlaceholder= { this.shouldShowPluginListPlaceholders( false ) } /> }
isPlaceholder= { this.shouldShowPluginListPlaceholders() } />
</div>
);
},
Expand All @@ -336,7 +314,7 @@ const PluginsMain = React.createClass( {
slug: 'no-slug',
canUpdateFiles: true,
name: 'Not a real site'
}
};

return plugins.map( plugin => {
return <PluginItem
Expand Down Expand Up @@ -396,7 +374,7 @@ const PluginsMain = React.createClass( {
key: filterItem.id,
path: filterItem.path,
selected: filterItem.id === this.props.filter,
}
};

if ( 'updates' === filterItem.id ) {
attr.count = this.state.pluginUpdateCount;
Expand Down
7 changes: 1 addition & 6 deletions client/my-sites/plugins/plugin-autoupdate-toggle/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,7 @@ module.exports = React.createClass( {
propTypes: {
isMock: React.PropTypes.bool,
site: React.PropTypes.object.isRequired,
plugin: React.PropTypes.object.isRequired,
wporg: React.PropTypes.bool
plugin: React.PropTypes.object.isRequired
},

toggleAutoupdates: function() {
Expand Down Expand Up @@ -52,10 +51,6 @@ module.exports = React.createClass( {
return null;
}

if ( ! this.props.wporg ) {
return this.translate( 'This plugin is not in the WordPress.org plugin repository, so we can\'t autoupdate it.' );
}

if ( ! this.props.site.hasMinimumJetpackVersion ) {
return this.translate( '%(site)s is not running an up to date version of Jetpack', {
args: { site: this.props.site.title }
Expand Down
28 changes: 3 additions & 25 deletions client/my-sites/plugins/plugin-information/index.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ export default React.createClass( {
hasUpdate: React.PropTypes.bool,
pluginVersion: React.PropTypes.string,
siteVersion: React.PropTypes.oneOfType( [ React.PropTypes.string, React.PropTypes.bool] ),
isWpcomPlugin: React.PropTypes.bool,
},

getDefaultProps() {
Expand Down Expand Up @@ -164,7 +163,7 @@ export default React.createClass( {
},

renderPlaceholder() {
const classes = classNames( { 'plugin-information': true, 'is-placeholder': true, 'is-wpcom-plugin': this.props.isWpcomPlugin } );
const classes = classNames( { 'plugin-information': true, 'is-placeholder': true } );
return (
<div className={ classes } >
<div className="plugin-information__wrapper">
Expand All @@ -186,31 +185,17 @@ export default React.createClass( {
{ this.renderHomepageLink() }
</div>
</div>
{ ! this.props.isWpcomPlugin &&
<PluginRatings
rating={ this.props.plugin.rating }
ratings={ this.props.plugin.ratings }
downloaded={ this.props.plugin.downloaded }
numRatings={ this.props.plugin.num_ratings }
slug={ this.props.plugin.slug }
placeholder={ true } /> }
placeholder={ true } />
</div>
);
},

renderWpcom() {
return (
<div className="plugin-information">
<p className="plugin-information__description">
{ this.props.plugin.description }
</p>
<div className="plugin-information__links">
{ this.renderWPCOMPluginSupportLink() }
</div>
</div>
);
},

renderWporg() {
const classes = classNames( {
'plugin-information__version-info': true,
Expand Down Expand Up @@ -250,13 +235,6 @@ export default React.createClass( {
return this.renderPlaceholder();
}

if ( this.props.plugin.wpcom ) {
return this.renderWpcom();
}

if ( this.props.plugin.wporg ) {
return this.renderWporg();
}
return null;
return this.renderWporg();
}
} );
3 changes: 1 addition & 2 deletions client/my-sites/plugins/plugin-item/plugin-item.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -171,8 +171,7 @@ module.exports = React.createClass( {
plugin={ this.props.plugin }
disabled={ this.props.isSelectable }
site={ this.props.selectedSite }
notices={ this.props.notices }
wporg={ !! this.props.plugin.wporg } />
notices={ this.props.notices } />
</div>
);
},
Expand Down
Loading

0 comments on commit 52e2d4d

Please sign in to comment.