PluginProbe
Easy Invoice – Invoice Generator, PDF Quotes & Payments / 2.4.4
Easy Invoice – Invoice Generator, PDF Quotes & Payments v2.4.4
2.4.3 2.4.4 2.4.2 2.4.0 2.4.1 2.3.8 2.3.7 2.3.6 2.3.5 2.3.4 2.3.3 2.3.2 2.3.1 2.2.0 2.1.21 2.1.20 2.1.19 2.1.18 2.1.0 2.1.1 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 All 60 releases
← All changes | uninstall.php +20 -3 2.4.0 → 2.4.4 View file →
@@ -51,12 +51,29 @@
51 51 foreach ( $tables as $table ) {
52 52 $wpdb->query( "DROP TABLE IF EXISTS `{$table}`" ); // phpcs:ignore WordPress.DB.PreparedSQL.InterpolatedNotPrepared -- table name from SHOW TABLES.
53 53 }
54 54
55 +// Files the plugin wrote to uploads/: payment receipts and quote signatures.
56 +$ei_upload = wp_upload_dir();
57 +if ( ! empty( $ei_upload['basedir'] ) ) {
58 + $ei_dir = trailingslashit( $ei_upload['basedir'] ) . 'easy-invoice';
59 + if ( is_dir( $ei_dir ) ) {
60 + $ei_iterator = new RecursiveIteratorIterator( new RecursiveDirectoryIterator( $ei_dir, FilesystemIterator::SKIP_DOTS ), RecursiveIteratorIterator::CHILD_FIRST );
61 + foreach ( $ei_iterator as $ei_file ) {
62 + if ( $ei_file->isDir() ) {
63 + @rmdir( $ei_file->getPathname() ); // phpcs:ignore WordPress.PHP.NoSilencedErrors,WordPress.WP.AlternativeFunctions
64 + } else {
65 + wp_delete_file( $ei_file->getPathname() );
66 + }
67 + }
68 + @rmdir( $ei_dir ); // phpcs:ignore WordPress.PHP.NoSilencedErrors,WordPress.WP.AlternativeFunctions
69 + }
70 +}
71 +
55 72 // Roles the plugin added.
56 -foreach ( [ 'ei_manager', 'ei_accountant', 'ei_sales', 'ei_viewer', 'easy_invoice_client' ] as $role ) {
57 - if ( get_role( $role ) ) {
58 - remove_role( $role );
73 +foreach ( [ 'ei_manager', 'ei_accountant', 'ei_sales', 'ei_viewer', 'easy_invoice_client' ] as $ei_role ) {
74 + if ( get_role( $ei_role ) ) {
75 + remove_role( $ei_role );
59 76 }
60 77 }
61 78
62 79 wp_cache_flush();