PluginProbe ʕ •ᴥ•ʔ
Hostinger Tools / 3.0.69
Hostinger Tools v3.0.69
3.0.70 3.0.69 3.0.68 3.0.67 3.0.66 1.8.1 1.8.2 1.8.3 1.9.1 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.4 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.1.2 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 3.0.0 3.0.10 3.0.11 3.0.12 3.0.13 3.0.14 3.0.15 3.0.16 3.0.17 3.0.18 3.0.19 3.0.2 3.0.20 3.0.21 3.0.22 3.0.23 3.0.24 3.0.25 3.0.26 3.0.27 3.0.28 3.0.29 3.0.3 3.0.30 3.0.31 3.0.32 3.0.33 3.0.34 3.0.35 3.0.36 3.0.37 3.0.38 3.0.39 3.0.4 3.0.40 3.0.41 3.0.42 3.0.43 3.0.44 3.0.45 3.0.46 3.0.47 3.0.48 3.0.49 3.0.5 3.0.50 3.0.51 3.0.52 3.0.53 3.0.54 3.0.55 3.0.56 3.0.57 3.0.58 3.0.59 3.0.6 3.0.60 3.0.61 3.0.62 3.0.65 3.0.7 3.0.8 3.0.9 trunk 1.8.0
hostinger / includes / Settings.php
hostinger / includes Last commit date
Admin 2 months ago Cli 2 weeks ago LlmsTxtGenerator 2 weeks ago Mcp 11 months ago Preview 1 year ago Rest 10 months ago Views 1 year ago Activator.php 1 year ago Bootstrap.php 9 months ago Cli.php 9 months ago ComingSoon.php 2 months ago Deactivator.php 1 year ago DefaultOptions.php 2 months ago Errors.php 1 year ago Helper.php 9 months ago Hooks.php 2 months ago Hostinger.php 2 months ago I18n.php 1 year ago LlmsTxtGenerator.php 1 year ago Loader.php 1 year ago Settings.php 1 year ago
Settings.php
75 lines
1 <?php
2
3 namespace Hostinger;
4
5 defined( 'ABSPATH' ) || exit;
6
7 class Settings {
8 public const MYSELF = 'myself';
9 public const FREELANCER = 'freelancer';
10 public const DEVELOPER = 'developer';
11 public const OTHER = 'other';
12 public const BUSINESS_BEGINNER_SEGMENT = 'business_beginner';
13 public const LEARNER_SEGMENT = 'learner';
14 public const BUSINESS_OWNER_SEGMENT = 'business_owner';
15 public const WEBSITE_TYPE_BUSINESS = 'business';
16 public const WEBSITE_TYPE_PORTFOLIO = 'portfolio';
17 public const WEBSITE_TYPE_BLOG = 'blog';
18 public const SITE_TITLE_OPTION = 'blogname';
19
20 public function __construct() {
21 if ( ! $this->get_setting( 'user_segment' ) ) {
22 $this->set_user_segment();
23 }
24 }
25
26 public function set_user_segment(): void {
27 $created_by = self::get_setting( 'survey.website.created_by' );
28 $created_for = self::get_setting( 'survey.website.for' );
29 $need_help = self::get_setting( 'survey.website.need_help' );
30 $work_at = self::get_setting( 'survey.work_at' );
31
32 if ( $this->is_business_beginner( $created_by, $created_for, $need_help ) ) {
33 self::update_setting( 'user_segment', self::BUSINESS_BEGINNER_SEGMENT );
34 }
35
36 if ( $this->is_learner( $work_at, $need_help ) ) {
37 self::update_setting( 'user_segment', self::LEARNER_SEGMENT );
38 }
39
40 if ( $this->is_bussiness_owner( $created_for, $created_by ) ) {
41 self::update_setting( 'user_segment', self::BUSINESS_OWNER_SEGMENT );
42 }
43 }
44
45 private function is_business_beginner( string $created_by, string $created_for, bool $need_help ): bool {
46 return $created_by === self::MYSELF && $created_for === self::MYSELF && $need_help;
47 }
48
49 private function is_learner( string $work_at, bool $need_help ): bool {
50 return $work_at === self::FREELANCER && $need_help;
51 }
52
53 private function is_bussiness_owner( string $created_for, string $created_by ): bool {
54 return $created_for === self::MYSELF && ( $created_by === self::DEVELOPER || $created_by === self::OTHER );
55 }
56
57 public static function get_setting( string $setting ): string {
58
59 if ( $setting ) {
60 return get_option( 'hostinger_' . $setting, '' );
61 }
62
63 return '';
64 }
65
66 public static function update_setting( string $setting, $value, $autoload = null ): void {
67
68 if ( $setting ) {
69 update_option( 'hostinger_' . $setting, $value, $autoload );
70 }
71 }
72 }
73
74 new Settings();
75