@@ -37,33 +37,12 @@ def get_rule_for_selector(stylesheet: CSSStyleSheet,
37
37
38
38
class Config :
39
39
def __init__ (self , ** kwargs ):
40
- app_config = current_app .config
41
- self .url = os .getenv ('WHOOGLE_CONFIG_URL' , '' )
42
- self .lang_search = os .getenv ('WHOOGLE_CONFIG_SEARCH_LANGUAGE' , '' )
43
- self .lang_interface = os .getenv ('WHOOGLE_CONFIG_LANGUAGE' , '' )
44
- self .style_modified = os .getenv (
45
- 'WHOOGLE_CONFIG_STYLE' , '' )
46
- self .block = os .getenv ('WHOOGLE_CONFIG_BLOCK' , '' )
47
- self .block_title = os .getenv ('WHOOGLE_CONFIG_BLOCK_TITLE' , '' )
48
- self .block_url = os .getenv ('WHOOGLE_CONFIG_BLOCK_URL' , '' )
49
- self .country = os .getenv ('WHOOGLE_CONFIG_COUNTRY' , '' )
50
- self .tbs = os .getenv ('WHOOGLE_CONFIG_TIME_PERIOD' , '' )
51
- self .theme = os .getenv ('WHOOGLE_CONFIG_THEME' , 'system' )
52
- self .safe = read_config_bool ('WHOOGLE_CONFIG_SAFE' )
53
- self .dark = read_config_bool ('WHOOGLE_CONFIG_DARK' ) # deprecated
54
- self .alts = read_config_bool ('WHOOGLE_CONFIG_ALTS' )
55
- self .nojs = read_config_bool ('WHOOGLE_CONFIG_NOJS' )
56
- self .tor = read_config_bool ('WHOOGLE_CONFIG_TOR' )
57
- self .near = os .getenv ('WHOOGLE_CONFIG_NEAR' , '' )
58
- self .new_tab = read_config_bool ('WHOOGLE_CONFIG_NEW_TAB' )
59
- self .view_image = read_config_bool ('WHOOGLE_CONFIG_VIEW_IMAGE' )
60
- self .get_only = read_config_bool ('WHOOGLE_CONFIG_GET_ONLY' )
61
- self .anon_view = read_config_bool ('WHOOGLE_CONFIG_ANON_VIEW' )
62
- self .preferences_encrypted = read_config_bool ('WHOOGLE_CONFIG_PREFERENCES_ENCRYPTED' )
63
- self .preferences_key = os .getenv ('WHOOGLE_CONFIG_PREFERENCES_KEY' , '' )
64
-
65
- self .accept_language = False
40
+ # User agent configuration
41
+ self .user_agent = kwargs .get ('user_agent' , 'LYNX_UA' )
42
+ self .custom_user_agent = kwargs .get ('custom_user_agent' , '' )
43
+ self .use_custom_user_agent = kwargs .get ('use_custom_user_agent' , False )
66
44
45
+ # Add user agent related keys to safe_keys
67
46
self .safe_keys = [
68
47
'lang_search' ,
69
48
'lang_interface' ,
@@ -77,9 +56,39 @@ def __init__(self, **kwargs):
77
56
'nojs' ,
78
57
'anon_view' ,
79
58
'preferences_encrypted' ,
80
- 'tbs'
59
+ 'tbs' ,
60
+ 'user_agent' ,
61
+ 'custom_user_agent' ,
62
+ 'use_custom_user_agent'
81
63
]
82
64
65
+ app_config = current_app .config
66
+ self .url = kwargs .get ('url' , '' )
67
+ self .lang_search = kwargs .get ('lang_search' , '' )
68
+ self .lang_interface = kwargs .get ('lang_interface' , '' )
69
+ self .style_modified = os .getenv (
70
+ 'WHOOGLE_CONFIG_STYLE' , '' )
71
+ self .block = os .getenv ('WHOOGLE_CONFIG_BLOCK' , '' )
72
+ self .block_title = os .getenv ('WHOOGLE_CONFIG_BLOCK_TITLE' , '' )
73
+ self .block_url = os .getenv ('WHOOGLE_CONFIG_BLOCK_URL' , '' )
74
+ self .country = os .getenv ('WHOOGLE_CONFIG_COUNTRY' , '' )
75
+ self .tbs = os .getenv ('WHOOGLE_CONFIG_TIME_PERIOD' , '' )
76
+ self .theme = kwargs .get ('theme' , '' )
77
+ self .safe = kwargs .get ('safe' , '' )
78
+ self .dark = kwargs .get ('dark' , '' )
79
+ self .alts = kwargs .get ('alts' , '' )
80
+ self .nojs = kwargs .get ('nojs' , '' )
81
+ self .tor = kwargs .get ('tor' , '' )
82
+ self .near = kwargs .get ('near' , '' )
83
+ self .new_tab = kwargs .get ('new_tab' , '' )
84
+ self .view_image = kwargs .get ('view_image' , '' )
85
+ self .get_only = kwargs .get ('get_only' , '' )
86
+ self .anon_view = read_config_bool ('WHOOGLE_CONFIG_ANON_VIEW' )
87
+ self .preferences_encrypted = read_config_bool ('WHOOGLE_CONFIG_PREFERENCES_ENCRYPTED' )
88
+ self .preferences_key = os .getenv ('WHOOGLE_CONFIG_PREFERENCES_KEY' , '' )
89
+
90
+ self .accept_language = False
91
+
83
92
# Skip setting custom config if there isn't one
84
93
if kwargs :
85
94
mutable_attrs = self .get_mutable_attrs ()
0 commit comments