-
Notifications
You must be signed in to change notification settings - Fork 42
/
Settings.php
68 lines (59 loc) · 1.42 KB
/
Settings.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<?php namespace RainLab\GoogleAnalytics\Models;
use Config;
use System\Models\SettingModel;
/**
* Settings for Google Analytics
*
* @package rainlab/googleanalytics
* @author Alexey Bobkov, Samuel Georges
*/
class Settings extends SettingModel
{
use \October\Rain\Database\Traits\Multisite;
use \October\Rain\Database\Traits\Validation;
/**
* @var string settingsCode
*/
public $settingsCode = 'rainlab_googleanalytics_settings';
/**
* @var string settingsFields
*/
public $settingsFields = 'fields.yaml';
/**
* @var array propagatable fields
*/
protected $propagatable = [];
/**
* @var array attachOne
*/
public $attachOne = [
'gapi_key' => [
\System\Models\File::class,
'public' => false
]
];
/**
* rules for validation
*/
public $rules = [
'gapi_key' => 'required_with:profile_id',
'profile_id' => 'required_with:gapi_key'
];
/**
* initSettingsData
*/
public function initSettingsData()
{
$this->domain_name = 'auto';
$this->anonymize_ip = false;
$this->force_ssl = false;
}
/**
* isMultisiteEnabled allows for programmatic toggling
* @return bool
*/
public function isMultisiteEnabled()
{
return (bool) Config::get('multisite.features.rainlab_googleanalytics_setting', false);
}
}