__CLASS__, 'description' => __('Allow the user to bookmark a page and then jump to it upon return.','comicpress') ); $this->WP_Widget(__CLASS__, __('ComicPress Bookmark','comicpress'), $widget_ops); } $this->text_fields = array( 'three-button' => array( 'tag-page' => array( 'label' => __('Tag page', 'comicpress'), 'default' => __('Bookmark', 'comicpress') ), 'clear-tag-off' => array( 'label' => __('Clear tag off', 'comicpress'), 'default' => '' ), 'clear-tag-on' => array( 'label' => __('Clear tag on', 'comicpress'), 'default' => __('Clear', 'comicpress') ), 'goto-tag-off' => array( 'label' => __('Goto tag off', 'comicpress'), 'default' => '' ), 'goto-tag-on' => array( 'label' => __('Goto tag on', 'comicpress'), 'default' => __('Goto', 'comicpress') ) ), 'one-button' => array( 'bookmark-clicker-off' => array( 'label' => __('Set bookmark', 'comicpress'), 'default' => __('+Bookmark', 'comicpress') ), 'bookmark-clicker-on' => array( 'label' => __('Use bookmark', 'comicpress'), 'default' => __('>>Bookmark', 'comicpress') ) ) ); } function init() { add_action('wp_head', array(&$this, 'wp_head')); } function is_active() { add_action('template_redirect', array(&$this, 'template_redirect')); } function template_redirect() { wp_enqueue_script('prototype'); wp_enqueue_script('cookiejar', get_template_directory_uri() . '/js/cookiejar.js', array('prototype')); wp_enqueue_script('bookmark', get_template_directory_uri() . '/js/bookmark.js', array('prototype', 'cookiejar')); } function wp_head() { ?>

__('Three-button mode', 'comicpress'), 'one-button' => __('One-button mode', 'comicpress') ) as $mode => $label) { ?>

">

text_fields[$mode] as $name => $info) { extract($info); $value = empty($instance[$name]) ? $default : $instance[$name]; ?>

text_fields as $type => $fields) { $all_text_fields = array_merge($all_text_fields, array_keys($fields)); } foreach ($all_text_fields as $key) { $instance[$key] = strip_tags($new_instance[$key]); } if (isset($this->text_fields[$new_instance['mode']])) { $instance['mode'] = $new_instance['mode']; } else { $instance['mode'] = array_shift(array_keys($this->text_fields)); } return $instance; } function widget($args, $instance) { global $post; extract($args, EXTR_SKIP); echo $before_widget; $title = empty($instance['title']) ? '' : apply_filters('widget_title', $instance['title']); if (!empty($title)) { echo $before_title . $title . $after_title; }; $mode = !isset($this->text_fields[$instance['mode']]) ? array_shift(array_keys($this->text_fields)) : $instance['mode']; $link = is_home() ? get_bloginfo('url') : get_permalink($post); $id = 'comic-bookmark-' . md5(rand()); switch ($instance['mode']) { case 'three-button': ?>