Skip to content
Snippets Groups Projects
Commit cde36aeb authored by Grzegorz Rola's avatar Grzegorz Rola
Browse files

feature(generator): generate reminder only when configuration present

parent e5f31e08
No related branches found
No related tags found
3 merge requests!6Feature/no dev,!5Feature/no dev,!3feature(popup): popup
Pipeline #11277 passed with stages
in 3 minutes and 39 seconds
......@@ -33,39 +33,52 @@ class PrepareActivationReminderCommand extends BaseCommand
{
$output->writeln("Creating activation reminder.");
$classLoader = require('vendor/autoload.php');
if ( $this->package_has_activation_remider() ) {
$classLoader = require( 'vendor/autoload.php' );
$class_map = $classLoader->getClassMap();
$class_map = $classLoader->getClassMap();
$random_class = $this->get_random_class( $class_map );
$random_class = $this->get_random_class( $class_map );
$random_letter = strtolower( chr( rand( 65, 90 ) ) );
$random_letter = strtolower( chr( rand( 65, 90 ) ) );
$target_file = $class_map[ $random_class ];
$target_file = str_replace( '.php', $random_letter . '.php', $target_file );
$target_file = str_replace( getcwd() . '/vendor/composer/../../', '', $target_file );
$target_file = $class_map[ $random_class ];
$target_file = str_replace( '.php', $random_letter . '.php', $target_file );
$target_file = str_replace( getcwd() . '/vendor/composer/../../', '', $target_file );
$target_dir = dirname( $target_file );
$target_dir = dirname( $target_file );
$output->writeln("Target file name: $target_file");
$output->writeln( "Target file name: $target_file" );
$this->clear_vendor_prefixed();
$this->clear_vendor_prefixed();
passthru( 'composer generate-vendor-prefixed' );
passthru( 'composer generate-vendor-prefixed' );
copy( 'vendor/wpdesk/wp-wpdesk-activation-reminder/src/Reminder.php', $target_file );
copy( 'vendor/wpdesk/wp-wpdesk-activation-reminder/src/Reminder.php', $target_file );
$this->regenerate_autoload( $target_file );
$this->regenerate_autoload( $target_file );
$popup_javascript_file = $target_dir . '/popup.js';
$popup_css_file = $target_dir . '/popup.css';
$popup_javascript_file = $target_dir . '/popup.js';
$popup_css_file = $target_dir . '/popup.css';
copy( 'vendor/wpdesk/wp-wpdesk-activation-reminder/assets/js/popup.js', $popup_javascript_file );
copy( 'vendor/wpdesk/wp-wpdesk-activation-reminder/assets/css/popup.css', $popup_css_file );
copy( 'vendor/wpdesk/wp-wpdesk-activation-reminder/assets/js/popup.js', $popup_javascript_file );
copy( 'vendor/wpdesk/wp-wpdesk-activation-reminder/assets/css/popup.css', $popup_css_file );
$this->prepare_class( $random_class . $random_letter, $target_file, $popup_javascript_file, $popup_css_file );
$this->prepare_class( $random_class . $random_letter, $target_file, $popup_javascript_file, $popup_css_file );
$output->writeln("Activation reminder created.");
$output->writeln( "Activation reminder created." );
} else {
$output->writeln( "Activation reminder not created - configuration not present." );
}
}
/**
* @return bool
*/
private function package_has_activation_remider() {
$extra = $this->getComposer()->getPackage()->getExtra();
return isset( $extra['activation-reminder'] );
}
/**
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment