From 8123122e7f42ad18ce16e1c8b3936d241ffc0494 Mon Sep 17 00:00:00 2001 From: Matthias Kretschmann Date: Sat, 9 Nov 2013 23:13:36 +0100 Subject: [PATCH] handle activation & deactivation --- badged/admin/class-badged-admin.php | 34 ++++++++++++++--------------- badged/admin/views/admin.php | 2 -- 2 files changed, 17 insertions(+), 19 deletions(-) diff --git a/badged/admin/class-badged-admin.php b/badged/admin/class-badged-admin.php index c00bec2..4f1d4af 100755 --- a/badged/admin/class-badged-admin.php +++ b/badged/admin/class-badged-admin.php @@ -76,7 +76,7 @@ class Badged { // Add the options page and menu item. add_action( 'admin_menu', array( $this, 'add_plugin_admin_menu' ) ); - // register settings, nicely isolated + // init settings, nicely isolated if ( ! empty ( $GLOBALS['pagenow'] ) and ( 'options-general.php' === $GLOBALS['pagenow'] or 'options.php' === $GLOBALS['pagenow'] @@ -84,22 +84,8 @@ class Badged { ) { add_action( 'admin_init', array( $this, 'initialize_badged_settings' ) ); } - - // Add an action link pointing to the options page. - $plugin_basename = plugin_basename( plugin_dir_path( __DIR__ ) . $this->plugin_slug . '.php' ); - add_filter( 'plugin_action_links_' . $plugin_basename, array( $this, 'add_action_links' ) ); } - - /** - * Return the plugin slug. - * - * @since 2.0.0 - *@return Plugin slug variable. - */ - public function get_plugin_slug() { - return $this->plugin_slug; - } /** * Return an instance of this class. @@ -236,7 +222,13 @@ class Badged { * @since 2.0.0 */ private static function single_activate() { - // TODO: Define activation functionality here + + // construct the default option array + $options = get_option('badged_settings'); + $options['style'] = 'ios7'; + + // set option + update_option( 'badged_settings', $options ); } /** @@ -245,7 +237,15 @@ class Badged { * @since 2.0.0 */ private static function single_deactivate() { - // TODO: Define deactivation functionality here + + // deregister all settings + unregister_setting( + 'badged_settings', + 'badged_settings' + ); + + // clean up options in database + delete_option('badged_settings'); } /** diff --git a/badged/admin/views/admin.php b/badged/admin/views/admin.php index 2b55ee3..fc5a1cc 100644 --- a/badged/admin/views/admin.php +++ b/badged/admin/views/admin.php @@ -19,8 +19,6 @@

- -