/** * Sanitize widget form values as they are saved. * * @see WP_Widget::update() * * @param array $new_instance Values just sent to be saved. * @param array $old_instance Previously saved values from database. * * @return array Updated safe values to be saved. */ public function update($new_instance, $old_instance) { $instance = array(); if (!empty($new_instance['title'])) { $instance['title'] = strip_tags($new_instance['title']); } if (!class_exists('Facebook_Activity_Feed')) { require_once dirname(dirname(__FILE__)) . '/class-facebook-activity-feed.php'; } $activity_feed = Facebook_Activity_Feed::fromArray($new_instance); if ($activity_feed) { $activity_feed_options = $activity_feed->toHTMLDataArray(); if (isset($activity_feed_options['header'])) { if ($activity_feed_options['header'] === 'false') { $activity_feed_options['header'] = false; } else { $activity_feed_options['header'] = true; } } if (isset($activity_feed_options['border-color'])) { $activity_feed_options['border_color'] = $activity_feed_options['border-color']; unset($activity_feed_options['border-color']); } if (isset($activity_feed_options['max-age'])) { $activity_feed_options['max_age'] = absint($activity_feed_options['max-age']); unset($activity_feed_options['max-age']); } foreach (array('width', 'height') as $option) { $activity_feed_options[$option] = absint($activity_feed_options[$option]); } if (isset($activity_feed_options['recommendations'])) { if ($activity_feed_options['recommendations'] === 'false') { $activity_feed_options['recommendations'] = false; } else { $activity_feed_options['recommendations'] = true; } } return array_merge($instance, $activity_feed_options); } return $instance; }
/** * Sanitize widget form values as they are saved. * * @since 1.0 * * @see WP_Widget::update() * * @param array $new_instance Values just sent to be saved. * @param array $old_instance Previously saved values from database. * * @return array Updated safe values to be saved. */ public function update($new_instance, $old_instance) { $instance = array(); $new_instance = (array) $new_instance; if (!empty($new_instance['title'])) { $instance['title'] = strip_tags($new_instance['title']); } // checkboxes foreach (array('header', 'recommendations') as $bool_option) { if (isset($new_instance[$bool_option])) { $new_instance[$bool_option] = true; } else { $new_instance[$bool_option] = false; } } // unsigned ints foreach (array('width', 'height', 'max_age') as $option) { if (isset($new_instance[$option])) { $new_instance[$option] = absint($new_instance[$option]); } } if (!class_exists('Facebook_Activity_Feed')) { require_once dirname(dirname(__FILE__)) . '/class-facebook-activity-feed.php'; } $activity_feed = Facebook_Activity_Feed::fromArray($new_instance); if ($activity_feed) { $activity_feed_options = $activity_feed->toHTMLDataArray(); // int with dash if (isset($activity_feed_options['max-age'])) { $activity_feed_options['max_age'] = absint($activity_feed_options['max-age']); unset($activity_feed_options['max-age']); } // bools foreach (array('header', 'recommendations') as $bool_option) { if (!isset($activity_feed_options[$bool_option])) { continue; } if ($activity_feed_options[$bool_option] === 'true') { $activity_feed_options[$bool_option] = true; } else { if ($activity_feed_options[$bool_option] === 'false') { $activity_feed_options[$bool_option] = false; } } } foreach (array('width', 'height') as $option) { if (isset($activity_feed_options[$option])) { $activity_feed_options[$option] = absint($activity_feed_options[$option]); } } return array_merge($instance, $activity_feed_options); } return $instance; }