addOptions(); $this->initOptions(get_option(APSWCore::APSW_OPTIONS)); } public function addOptions() { $options = array( 'is_stats_together' => 1, 'is_post_view_by_ip' => 1, 'is_display_daily_views' => 1, 'post_types' => array('post', 'page'), 'isShowLoggedInUserStatistic' => 0, 'apIsShowAvatar' => 1, 'apAvatarSize' => 48, 'apIsShowThumbnail' => 1, 'apThumbnailSize' => 32, 'apPostsLimit' => 10, 'ppIsShowThumbnail' => 1, 'ppThumbnailSize' => 32, 'ppPostsLimit' => 10, 'puIsShowAvatar' => 1, 'puAvatarSize' => 32, 'puUsersLimit' => 10, 'is_display_custom_html_for_widgets' => 1, 'postTitleLength' => 15, 'postDefaultThumbnail' => '', 'custom_css' => '', ); add_option(APSWCore::APSW_OPTIONS, $options); } public function initOptions($options) { $options = maybe_unserialize($options); $this->isStatsTogether = isset($options['is_stats_together']) ? $options['is_stats_together'] : 1; $this->isPostViewByIp = isset($options['is_post_view_by_ip']) ? $options['is_post_view_by_ip'] : 1; $this->isDisplayDailyViews = isset($options['is_display_daily_views']) ? $options['is_display_daily_views'] : 0; $this->postTypes = isset($options['post_types']) ? $options['post_types'] : array('post', 'page'); $this->isShowLoggedInUserStatistic = isset($options['isShowLoggedInUserStatistic']) ? $options['isShowLoggedInUserStatistic'] : 0; $this->apIsShowAvatar = isset($options['apIsShowAvatar']) ? $options['apIsShowAvatar'] : 0; $this->apAvatarSize = isset($options['apAvatarSize']) && ($size = absint($options['apAvatarSize'])) ? $size : 48; $this->apIsShowThumbnail = isset($options['apIsShowThumbnail']) ? $options['apIsShowThumbnail'] : 0; $this->apThumbnailSize = isset($options['apThumbnailSize']) && ($size = absint($options['apThumbnailSize'])) ? $size : 32; $this->apPostsLimit = isset($options['apPostsLimit']) && ($limit = absint($options['apPostsLimit'])) ? $limit : 10; $this->ppIsShowThumbnail = isset($options['ppIsShowThumbnail']) ? $options['ppIsShowThumbnail'] : 0; $this->ppThumbnailSize = isset($options['ppThumbnailSize']) && ($size = absint($options['ppThumbnailSize'])) ? $size : 32; $this->ppPostsLimit = isset($options['ppPostsLimit']) && ($limit = absint($options['ppPostsLimit'])) ? $limit : 10; $this->puIsShowAvatar = isset($options['puIsShowAvatar']) ? $options['puIsShowAvatar'] : 0; $this->puAvatarSize = isset($options['puAvatarSize']) && ($size = absint($options['puAvatarSize'])) ? $size : 32; $this->puUsersLimit = isset($options['puUsersLimit']) && ($limit = absint($options['puUsersLimit'])) ? $limit : 10; $this->isDisplayCustomHtmlForWidgets = isset($options['is_display_custom_html_for_widgets']) ? $options['is_display_custom_html_for_widgets'] : 0; $this->postTitleLength = isset($options['postTitleLength']) && ($postTitleLength = absint($options['postTitleLength'])) ? $postTitleLength : 15; $this->postDefaultThumbnail = isset($options['postDefaultThumbnail']) && ($postThumbnail = trim($options['postDefaultThumbnail'])) ? $postThumbnail : ''; $this->customCss = $options['custom_css']; } public function updateOptions() { update_option(APSWCore::APSW_OPTIONS, $this->toArray()); } public function toArray() { $options = array( 'is_stats_together' => $this->isStatsTogether, 'is_post_view_by_ip' => $this->isPostViewByIp, 'is_display_daily_views' => $this->isDisplayDailyViews, 'post_types' => $this->postTypes, 'isShowLoggedInUserStatistic' => $this->isShowLoggedInUserStatistic, 'apIsShowAvatar' => $this->apIsShowAvatar, 'apAvatarSize' => $this->apAvatarSize, 'apIsShowThumbnail' => $this->apIsShowThumbnail, 'apThumbnailSize' => $this->apThumbnailSize, 'apPostsLimit' => $this->apPostsLimit, 'ppIsShowThumbnail' => $this->ppIsShowThumbnail, 'ppThumbnailSize' => $this->ppThumbnailSize, 'ppPostsLimit' => $this->ppPostsLimit, 'puIsShowAvatar' => $this->puIsShowAvatar, 'puAvatarSize' => $this->puAvatarSize, 'puUsersLimit' => $this->puUsersLimit, 'is_display_custom_html_for_widgets' => $this->isDisplayCustomHtmlForWidgets, 'postTitleLength' => $this->postTitleLength, 'postDefaultThumbnail' => $this->postDefaultThumbnail, 'custom_css' => $this->customCss ); return $options; } }