25 |
25 |
26 ACTIVATION_MODES_LABELS = {ACTIVATED_ON_FRONT: _("Front-office only"), |
26 ACTIVATION_MODES_LABELS = {ACTIVATED_ON_FRONT: _("Front-office only"), |
27 ACTIVATED_ON_BACK: _("Back-office only"), |
27 ACTIVATED_ON_BACK: _("Back-office only"), |
28 ACTIVATED_ON_BOTH: _("Front-office and back-office")} |
28 ACTIVATED_ON_BOTH: _("Front-office and back-office")} |
29 |
29 |
30 ACTIVATION_MODES = SimpleVocabulary([SimpleTerm(k, title=v) for k, v in ACTIVATION_MODES_LABELS.items()]) |
30 ACTIVATION_MODES = SimpleVocabulary([ |
|
31 SimpleTerm(k, title=v) |
|
32 for k, v in ACTIVATION_MODES_LABELS.items() |
|
33 ]) |
31 |
34 |
32 GOOGLE_TAGS_INFO_KEY = 'pyams_skin.tagmanager_info' |
35 GOOGLE_TAGS_INFO_KEY = 'pyams_skin.tagmanager_info' |
33 |
36 |
34 |
37 |
35 class IGoogleTagManagerInfo(Interface): |
38 class IGoogleTagManagerInfo(Interface): |
39 description=_("Is Google Tag Manager activated?"), |
42 description=_("Is Google Tag Manager activated?"), |
40 required=True, |
43 required=True, |
41 default=False) |
44 default=False) |
42 |
45 |
43 on_accepted_cookie = Bool(title=_("Activate only if not rejected cookies?"), |
46 on_accepted_cookie = Bool(title=_("Activate only if not rejected cookies?"), |
44 description=_("If 'no', plug-in will be activated without waiting for accepted cookies"), |
47 description=_("If 'no', plug-in will be activated without waiting " |
|
48 "for accepted cookies"), |
45 required=False, |
49 required=False, |
46 default=False) |
50 default=False) |
47 |
51 |
48 cookie_name = TextLine(title=_("Cookie name"), |
52 cookie_name = TextLine(title=_("Cookie name"), |
49 description=_("Name of cookie checked to verify if cookies have been rejected"), |
53 description=_("Name of cookie checked to verify if cookies have been " |
|
54 "rejected"), |
50 required=False) |
55 required=False) |
51 |
56 |
52 rejected_cookie_value = TextLine(title=_("Rejected cookie value"), |
57 rejected_cookie_value = TextLine(title=_("Rejected cookie value"), |
53 description=_("Cookie value matching user's cookies reject"), |
58 description=_("Cookie value matching user's cookies reject"), |
54 required=False) |
59 required=False) |
57 def check_cookie(self): |
62 def check_cookie(self): |
58 if self.on_accepted_cookie and not (self.cookie_name and self.rejected_cookie_value): |
63 if self.on_accepted_cookie and not (self.cookie_name and self.rejected_cookie_value): |
59 raise Invalid(_("You must specify cookie name and reject value !!")) |
64 raise Invalid(_("You must specify cookie name and reject value !!")) |
60 |
65 |
61 container_id = TextLine(title=_("Container ID"), |
66 container_id = TextLine(title=_("Container ID"), |
62 description=_("Google Tag Manager container ID (may start with 'GTM-')"), |
67 description=_("Google Tag Manager container ID (may start with " |
|
68 "'GTM-')"), |
63 required=False) |
69 required=False) |
64 |
70 |
65 activation_mode = Choice(title=_("Activation mode"), |
71 activation_mode = Choice(title=_("Activation mode"), |
66 description=_("Mode(s) in which Google Tags are activated"), |
72 description=_("Mode(s) in which Google Tags are activated"), |
67 vocabulary=ACTIVATION_MODES, |
73 vocabulary=ACTIVATION_MODES, |
83 description=_("Are Google Analytics statistics activated?"), |
89 description=_("Are Google Analytics statistics activated?"), |
84 required=True, |
90 required=True, |
85 default=False) |
91 default=False) |
86 |
92 |
87 on_accepted_cookie = Bool(title=_("Activate only if not rejected cookies?"), |
93 on_accepted_cookie = Bool(title=_("Activate only if not rejected cookies?"), |
88 description=_("If 'no', plug-in will be activated without waiting for accepted cookies"), |
94 description=_("If 'no', plug-in will be activated without waiting " |
|
95 "for accepted cookies"), |
89 required=False, |
96 required=False, |
90 default=False) |
97 default=False) |
91 |
98 |
92 cookie_name = TextLine(title=_("Cookie name"), |
99 cookie_name = TextLine(title=_("Cookie name"), |
93 description=_("Name of cookie checked to verify if cookies have been rejected"), |
100 description=_("Name of cookie checked to verify if cookies have been " |
|
101 "rejected"), |
94 required=False) |
102 required=False) |
95 |
103 |
96 rejected_cookie_value = TextLine(title=_("Rejected cookie value"), |
104 rejected_cookie_value = TextLine(title=_("Rejected cookie value"), |
97 description=_("Cookie value matching user's cookies reject"), |
105 description=_("Cookie value matching user's cookies reject"), |
98 required=False) |
106 required=False) |
123 description=_("Are UserReport comments and feedback activated?"), |
131 description=_("Are UserReport comments and feedback activated?"), |
124 required=True, |
132 required=True, |
125 default=False) |
133 default=False) |
126 |
134 |
127 on_accepted_cookie = Bool(title=_("Activate only if not rejected cookies?"), |
135 on_accepted_cookie = Bool(title=_("Activate only if not rejected cookies?"), |
128 description=_("If 'no', plug-in will be activated without waiting for accepted cookies"), |
136 description=_("If 'no', plug-in will be activated without waiting " |
|
137 "for accepted cookies"), |
129 required=False, |
138 required=False, |
130 default=False) |
139 default=False) |
131 |
140 |
132 cookie_name = TextLine(title=_("Cookie name"), |
141 cookie_name = TextLine(title=_("Cookie name"), |
133 description=_("Name of cookie checked to verify if cookies have been rejected"), |
142 description=_("Name of cookie checked to verify if cookies have been " |
|
143 "rejected"), |
134 required=False) |
144 required=False) |
135 |
145 |
136 rejected_cookie_value = TextLine(title=_("Rejected cookie value"), |
146 rejected_cookie_value = TextLine(title=_("Rejected cookie value"), |
137 description=_("Cookie value matching user's cookies reject"), |
147 description=_("Cookie value matching user's cookies reject"), |
138 required=False) |
148 required=False) |
141 def check_cookie(self): |
151 def check_cookie(self): |
142 if self.on_accepted_cookie and not (self.cookie_name and self.rejected_cookie_value): |
152 if self.on_accepted_cookie and not (self.cookie_name and self.rejected_cookie_value): |
143 raise Invalid(_("You must specify cookie name and reject value !!")) |
153 raise Invalid(_("You must specify cookie name and reject value !!")) |
144 |
154 |
145 account_id = TextLine(title=_("Account ID"), |
155 account_id = TextLine(title=_("Account ID"), |
146 description=_("UserReport account ID, available in 'initSite' code snippet"), |
156 description=_("UserReport account ID, available in 'initSite' code " |
|
157 "snippet"), |
147 required=False) |
158 required=False) |
148 |
159 |
149 activation_mode = Choice(title=_("Activation mode"), |
160 activation_mode = Choice(title=_("Activation mode"), |
150 description=_("Mode(s) in which reports are activated"), |
161 description=_("Mode(s) in which reports are activated"), |
151 vocabulary=ACTIVATION_MODES, |
162 vocabulary=ACTIVATION_MODES, |
152 default=ACTIVATED_ON_BOTH, |
163 default=ACTIVATED_ON_BOTH, |
153 required=True) |
164 required=True) |
|
165 |
|
166 |
|
167 FACEBOOK_INFO_KEY = 'pyams_skin.facebook_info' |
|
168 |
|
169 |
|
170 class IFacebookSiteInfo(Interface): |
|
171 """Facebook site account info""" |
|
172 |
|
173 enabled = Bool(title=_("Facebook site integration?"), |
|
174 description=_("Is Facebbok integration code activated?"), |
|
175 required=True, |
|
176 default=False) |
|
177 |
|
178 verification_code = TextLine(title=_("Verification code"), |
|
179 description=_("Verification code is available in " |
|
180 "Facebook's \"Meta Tag Verification\" tool..."), |
|
181 required=False) |