Merge lp:~vauxoo/addons-vauxoo/7.0-improvements_hu_task_1184-dev-yani into lp:addons-vauxoo/7.0
- 7.0-improvements_hu_task_1184-dev-yani
- Merge into 7.0
Proposed by
Yanina Aular (Vauxoo)
Status: | Merged |
---|---|
Merged at revision: | 994 |
Proposed branch: | lp:~vauxoo/addons-vauxoo/7.0-improvements_hu_task_1184-dev-yani |
Merge into: | lp:addons-vauxoo/7.0 |
Diff against target: |
1316 lines (+1074/-139) 6 files modified
user_story/__openerp__.py (+1/-0) user_story/data/user_story_template.xml (+957/-21) user_story/model/user_story.py (+115/-0) user_story/view/userstory_view.xml (+0/-2) user_story_long_term/__openerp__.py (+1/-1) user_story_long_term/user_story_long_term.py (+0/-115) |
To merge this branch: | bzr merge lp:~vauxoo/addons-vauxoo/7.0-improvements_hu_task_1184-dev-yani |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Gabriela Quilarque | Approve | ||
Review via email:
|
Commit message
Description of the change
1.- El código que escribe en el log cuando se acepta un criterio, y el código que envia un email cuando la hu pasa de estado, debe ir en el módulo user.story en el modelo user.story. No en el módulo user_story_
2.- Cuando se envia un email debido a que cambia de estado la hu a pending, este debe contener una plantilla, como lo escribí en la tarea, es tal cual como cuando se cambia al estado backlog la tarea.
3.- En la vista en Tree de criterios de aceptación por favor eliminar los campos development y difficulty.
To post a comment you must log in.
- 998. By Yanina Aular (Vauxoo)
-
[IMP] update template xml
- 999. By Yanina Aular (Vauxoo)
-
[FIX]
- 1000. By Yanina Aular (Vauxoo)
-
[IMP] in color font and redaction
Revision history for this message
![](/+icing/build/overlay/assets/skins/sam/images/close.gif)
Gabriela Quilarque (gabrielaquilarque97) : | # |
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'user_story/__openerp__.py' | |||
2 | --- user_story/__openerp__.py 2014-02-28 03:29:36 +0000 | |||
3 | +++ user_story/__openerp__.py 2014-03-26 20:24:07 +0000 | |||
4 | @@ -61,6 +61,7 @@ | |||
5 | 61 | "view/userstory_view.xml", | 61 | "view/userstory_view.xml", |
6 | 62 | "view/project_view.xml", | 62 | "view/project_view.xml", |
7 | 63 | "data/data.xml", | 63 | "data/data.xml", |
8 | 64 | "data/user_story_template.xml", | ||
9 | 64 | ], | 65 | ], |
10 | 65 | "active": False, | 66 | "active": False, |
11 | 66 | "images": [], | 67 | "images": [], |
12 | 67 | 68 | ||
13 | === renamed file 'user_story_long_term/data/user_story_template.xml' => 'user_story/data/user_story_template.xml' | |||
14 | --- user_story_long_term/data/user_story_template.xml 2014-03-25 15:15:07 +0000 | |||
15 | +++ user_story/data/user_story_template.xml 2014-03-26 20:24:07 +0000 | |||
16 | @@ -1,12 +1,12 @@ | |||
17 | 1 | <?xml version="1.0"?> | 1 | <?xml version="1.0"?> |
18 | 2 | <openerp> | 2 | <openerp> |
20 | 3 | <data noupdate="1"> | 3 | <data noupdate="0"> |
21 | 4 | <!-- | 4 | <!-- |
22 | 5 | ===================================================== | 5 | ===================================================== |
23 | 6 | SEND EMAIL TEMPLATE | 6 | SEND EMAIL TEMPLATE |
24 | 7 | ===================================================== | 7 | ===================================================== |
25 | 8 | --> | 8 | --> |
27 | 9 | <record id="template_send_email_hu" model="email.template"> | 9 | <record id="template_send_email_hu" model="email.template" forcecreate="True"> |
28 | 10 | <field name="name">Accept Criteria</field> | 10 | <field name="name">Accept Criteria</field> |
29 | 11 | <field name="email_from"></field> | 11 | <field name="email_from"></field> |
30 | 12 | <field name="model_id" ref="user_story.model_user_story" /> | 12 | <field name="model_id" ref="user_story.model_user_story" /> |
31 | @@ -19,20 +19,482 @@ | |||
32 | 19 | <field name="email_to"></field> | 19 | <field name="email_to"></field> |
33 | 20 | <field name="sequence">5</field> | 20 | <field name="sequence">5</field> |
34 | 21 | <field name="body_html"><![CDATA[ | 21 | <field name="body_html"><![CDATA[ |
45 | 22 | <html> | 22 | <html> |
46 | 23 | <head> | 23 | <head> |
47 | 24 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | 24 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
48 | 25 | <title>*|MC:SUBJECT|*</title> | 25 | <title>*|MC:SUBJECT|*</title> |
49 | 26 | </head> | 26 | <style type="text/css"> |
50 | 27 | <body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0"> | 27 | /* Client-specific Styles */ |
51 | 28 | In the User Story "NAME_HU", the "NAME_CRI" criteria has been accepted by NAME_USER. | 28 | #outlook a{padding:0;} /* Force Outlook to provide a "view in browser" button. */ |
52 | 29 | </body> | 29 | body{width:100% !important;} .ReadMsgBody{width:100%;} .ExternalClass{width:100%;} /* Force Hotmail to display emails at full width */ |
53 | 30 | </html> | 30 | body{-webkit-text-size-adjust:none;} /* Prevent Webkit platforms from changing default text sizes. */ |
54 | 31 | 31 | ||
55 | 32 | /* Reset Styles */ | ||
56 | 33 | body{margin:0; padding:0;} | ||
57 | 34 | img{border:0; height:auto; line-height:100%; outline:none; text-decoration:none;} | ||
58 | 35 | table td{border-collapse:collapse;} | ||
59 | 36 | #backgroundTable{height:100% !important; margin:0; padding:0; width:100% !important;} | ||
60 | 37 | |||
61 | 38 | /* Template Styles */ | ||
62 | 39 | |||
63 | 40 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: COMMON PAGE ELEMENTS /\/\/\/\/\/\/\/\/\/\ */ | ||
64 | 41 | |||
65 | 42 | /** | ||
66 | 43 | * @tab Page | ||
67 | 44 | * @section background color | ||
68 | 45 | * @tip Set the background color for your email. You may want to choose one that matches your company's branding. | ||
69 | 46 | * @theme page | ||
70 | 47 | */ | ||
71 | 48 | body, #backgroundTable{ | ||
72 | 49 | /*@editable*/ background-color:#FAFAFA; | ||
73 | 50 | } | ||
74 | 51 | |||
75 | 52 | /** | ||
76 | 53 | * @tab Page | ||
77 | 54 | * @section email border | ||
78 | 55 | * @tip Set the border for your email. | ||
79 | 56 | */ | ||
80 | 57 | #templateContainer{ | ||
81 | 58 | /*@editable*/ border:0; | ||
82 | 59 | } | ||
83 | 60 | |||
84 | 61 | /** | ||
85 | 62 | * @tab Page | ||
86 | 63 | * @section heading 1 | ||
87 | 64 | * @tip Set the styling for all first-level headings in your emails. These should be the largest of your headings. | ||
88 | 65 | * @style heading 1 | ||
89 | 66 | */ | ||
90 | 67 | h1, .h1{ | ||
91 | 68 | /*@editable*/ color:#202020; | ||
92 | 69 | display:block; | ||
93 | 70 | /*@editable*/ font-family:Arial; | ||
94 | 71 | /*@editable*/ font-size:40px; | ||
95 | 72 | /*@editable*/ font-weight:bold; | ||
96 | 73 | /*@editable*/ line-height:100%; | ||
97 | 74 | margin-top:2%; | ||
98 | 75 | margin-right:0; | ||
99 | 76 | margin-bottom:1%; | ||
100 | 77 | margin-left:0; | ||
101 | 78 | /*@editable*/ text-align:left; | ||
102 | 79 | } | ||
103 | 80 | |||
104 | 81 | /** | ||
105 | 82 | * @tab Page | ||
106 | 83 | * @section heading 2 | ||
107 | 84 | * @tip Set the styling for all second-level headings in your emails. | ||
108 | 85 | * @style heading 2 | ||
109 | 86 | */ | ||
110 | 87 | h2, .h2{ | ||
111 | 88 | /*@editable*/ color:#404040; | ||
112 | 89 | display:block; | ||
113 | 90 | /*@editable*/ font-family:Arial; | ||
114 | 91 | /*@editable*/ font-size:18px; | ||
115 | 92 | /*@editable*/ font-weight:bold; | ||
116 | 93 | /*@editable*/ line-height:100%; | ||
117 | 94 | margin-top:2%; | ||
118 | 95 | margin-right:0; | ||
119 | 96 | margin-bottom:1%; | ||
120 | 97 | margin-left:0; | ||
121 | 98 | /*@editable*/ text-align:left; | ||
122 | 99 | } | ||
123 | 100 | |||
124 | 101 | /** | ||
125 | 102 | * @tab Page | ||
126 | 103 | * @section heading 3 | ||
127 | 104 | * @tip Set the styling for all third-level headings in your emails. | ||
128 | 105 | * @style heading 3 | ||
129 | 106 | */ | ||
130 | 107 | h3, .h3{ | ||
131 | 108 | /*@editable*/ color:#606060; | ||
132 | 109 | display:block; | ||
133 | 110 | /*@editable*/ font-family:Arial; | ||
134 | 111 | /*@editable*/ font-size:16px; | ||
135 | 112 | /*@editable*/ font-weight:bold; | ||
136 | 113 | /*@editable*/ line-height:100%; | ||
137 | 114 | margin-top:2%; | ||
138 | 115 | margin-right:0; | ||
139 | 116 | margin-bottom:1%; | ||
140 | 117 | margin-left:0; | ||
141 | 118 | /*@editable*/ text-align:left; | ||
142 | 119 | } | ||
143 | 120 | |||
144 | 121 | /** | ||
145 | 122 | * @tab Page | ||
146 | 123 | * @section heading 4 | ||
147 | 124 | * @tip Set the styling for all fourth-level headings in your emails. These should be the smallest of your headings. | ||
148 | 125 | * @style heading 4 | ||
149 | 126 | */ | ||
150 | 127 | h4, .h4{ | ||
151 | 128 | /*@editable*/ color:#808080; | ||
152 | 129 | display:block; | ||
153 | 130 | /*@editable*/ font-family:Arial; | ||
154 | 131 | /*@editable*/ font-size:14px; | ||
155 | 132 | /*@editable*/ font-weight:bold; | ||
156 | 133 | /*@editable*/ line-height:100%; | ||
157 | 134 | margin-top:2%; | ||
158 | 135 | margin-right:0; | ||
159 | 136 | margin-bottom:1%; | ||
160 | 137 | margin-left:0; | ||
161 | 138 | /*@editable*/ text-align:left; | ||
162 | 139 | } | ||
163 | 140 | |||
164 | 141 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: PREHEADER /\/\/\/\/\/\/\/\/\/\ */ | ||
165 | 142 | |||
166 | 143 | /** | ||
167 | 144 | * @tab Header | ||
168 | 145 | * @section preheader style | ||
169 | 146 | * @tip Set the background color for your email's preheader area. | ||
170 | 147 | * @theme page | ||
171 | 148 | */ | ||
172 | 149 | #templatePreheader{ | ||
173 | 150 | /*@editable*/ background-color:#FAFAFA; | ||
174 | 151 | } | ||
175 | 152 | |||
176 | 153 | /** | ||
177 | 154 | * @tab Header | ||
178 | 155 | * @section preheader text | ||
179 | 156 | * @tip Set the styling for your email's preheader text. Choose a size and color that is easy to read. | ||
180 | 157 | */ | ||
181 | 158 | .preheaderContent div{ | ||
182 | 159 | /*@editable*/ color:#707070; | ||
183 | 160 | /*@editable*/ font-family:Arial; | ||
184 | 161 | /*@editable*/ font-size:10px; | ||
185 | 162 | /*@editable*/ line-height:100%; | ||
186 | 163 | /*@editable*/ text-align:left; | ||
187 | 164 | } | ||
188 | 165 | |||
189 | 166 | /** | ||
190 | 167 | * @tab Header | ||
191 | 168 | * @section preheader link | ||
192 | 169 | * @tip Set the styling for your email's preheader links. Choose a color that helps them stand out from your text. | ||
193 | 170 | */ | ||
194 | 171 | .preheaderContent div a:link, .preheaderContent div a:visited, /* Yahoo! Mail Override */ .preheaderContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
195 | 172 | /*@editable*/ color:#336699; | ||
196 | 173 | /*@editable*/ font-weight:normal; | ||
197 | 174 | /*@editable*/ text-decoration:underline; | ||
198 | 175 | } | ||
199 | 176 | |||
200 | 177 | /** | ||
201 | 178 | * @tab Header | ||
202 | 179 | * @section social bar style | ||
203 | 180 | * @tip Set the background color and border for your email's footer social bar. | ||
204 | 181 | */ | ||
205 | 182 | #social div{ | ||
206 | 183 | /*@editable*/ text-align:right; | ||
207 | 184 | } | ||
208 | 185 | |||
209 | 186 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: HEADER /\/\/\/\/\/\/\/\/\/\ */ | ||
210 | 187 | |||
211 | 188 | /** | ||
212 | 189 | * @tab Header | ||
213 | 190 | * @section header style | ||
214 | 191 | * @tip Set the background color and border for your email's header area. | ||
215 | 192 | * @theme header | ||
216 | 193 | */ | ||
217 | 194 | #templateHeader{ | ||
218 | 195 | /*@editable*/ background-color:#FFFFFF; | ||
219 | 196 | /*@editable*/ border-bottom:5px solid #505050; | ||
220 | 197 | } | ||
221 | 198 | |||
222 | 199 | /** | ||
223 | 200 | * @tab Header | ||
224 | 201 | * @section header text | ||
225 | 202 | * @tip Set the styling for your email's header text. Choose a size and color that is easy to read. | ||
226 | 203 | */ | ||
227 | 204 | .headerContent{ | ||
228 | 205 | /*@editable*/ color:#202020; | ||
229 | 206 | /*@editable*/ font-family:Arial; | ||
230 | 207 | /*@editable*/ font-size:34px; | ||
231 | 208 | /*@editable*/ font-weight:bold; | ||
232 | 209 | /*@editable*/ line-height:100%; | ||
233 | 210 | /*@editable*/ padding:10px; | ||
234 | 211 | /*@editable*/ text-align:right; | ||
235 | 212 | /*@editable*/ vertical-align:middle; | ||
236 | 213 | } | ||
237 | 214 | |||
238 | 215 | /** | ||
239 | 216 | * @tab Header | ||
240 | 217 | * @section header link | ||
241 | 218 | * @tip Set the styling for your email's header links. Choose a color that helps them stand out from your text. | ||
242 | 219 | */ | ||
243 | 220 | .headerContent a:link, .headerContent a:visited, /* Yahoo! Mail Override */ .headerContent a .yshortcuts /* Yahoo! Mail Override */{ | ||
244 | 221 | /*@editable*/ color:#336699; | ||
245 | 222 | /*@editable*/ font-weight:normal; | ||
246 | 223 | /*@editable*/ text-decoration:underline; | ||
247 | 224 | } | ||
248 | 225 | |||
249 | 226 | #headerImage{ | ||
250 | 227 | height:auto; | ||
251 | 228 | max-width:600px !important; | ||
252 | 229 | } | ||
253 | 230 | |||
254 | 231 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: MAIN BODY /\/\/\/\/\/\/\/\/\/\ */ | ||
255 | 232 | |||
256 | 233 | /** | ||
257 | 234 | * @tab Body | ||
258 | 235 | * @section body style | ||
259 | 236 | * @tip Set the background color for your email's body area. | ||
260 | 237 | */ | ||
261 | 238 | #templateContainer, .bodyContent{ | ||
262 | 239 | /*@editable*/ background-color:#FDFDFD; | ||
263 | 240 | } | ||
264 | 241 | |||
265 | 242 | /** | ||
266 | 243 | * @tab Body | ||
267 | 244 | * @section body text | ||
268 | 245 | * @tip Set the styling for your email's main content text. Choose a size and color that is easy to read. | ||
269 | 246 | * @theme main | ||
270 | 247 | */ | ||
271 | 248 | .bodyContent div{ | ||
272 | 249 | /*@editable*/ color:#505050; | ||
273 | 250 | /*@editable*/ font-family:Arial; | ||
274 | 251 | /*@editable*/ font-size:14px; | ||
275 | 252 | /*@editable*/ line-height:150%; | ||
276 | 253 | /*@editable*/ text-align:justify; | ||
277 | 254 | } | ||
278 | 255 | |||
279 | 256 | /** | ||
280 | 257 | * @tab Body | ||
281 | 258 | * @section body link | ||
282 | 259 | * @tip Set the styling for your email's main content links. Choose a color that helps them stand out from your text. | ||
283 | 260 | */ | ||
284 | 261 | .bodyContent div a:link, .bodyContent div a:visited, /* Yahoo! Mail Override */ .bodyContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
285 | 262 | /*@editable*/ color:#336699; | ||
286 | 263 | /*@editable*/ font-weight:normal; | ||
287 | 264 | /*@editable*/ text-decoration:underline; | ||
288 | 265 | } | ||
289 | 266 | |||
290 | 267 | .bodyContent img{ | ||
291 | 268 | display:inline; | ||
292 | 269 | height:auto; | ||
293 | 270 | } | ||
294 | 271 | |||
295 | 272 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: SIDEBAR /\/\/\/\/\/\/\/\/\/\ */ | ||
296 | 273 | |||
297 | 274 | /** | ||
298 | 275 | * @tab Sidebar | ||
299 | 276 | * @section sidebar style | ||
300 | 277 | * @tip Set the background color and border for your email's sidebar area. | ||
301 | 278 | */ | ||
302 | 279 | #templateSidebar{ | ||
303 | 280 | /*@editable*/ background-color:#FDFDFD; | ||
304 | 281 | } | ||
305 | 282 | |||
306 | 283 | /** | ||
307 | 284 | * @tab Sidebar | ||
308 | 285 | * @section sidebar style | ||
309 | 286 | * @tip Set the background color and border for your email's sidebar area. | ||
310 | 287 | */ | ||
311 | 288 | .sidebarContent{ | ||
312 | 289 | /*@editable*/ border-right:1px solid #DDDDDD; | ||
313 | 290 | } | ||
314 | 291 | |||
315 | 292 | /** | ||
316 | 293 | * @tab Sidebar | ||
317 | 294 | * @section sidebar text | ||
318 | 295 | * @tip Set the styling for your email's sidebar text. Choose a size and color that is easy to read. | ||
319 | 296 | */ | ||
320 | 297 | .sidebarContent div{ | ||
321 | 298 | /*@editable*/ color:#505050; | ||
322 | 299 | /*@editable*/ font-family:Arial; | ||
323 | 300 | /*@editable*/ font-size:10px; | ||
324 | 301 | /*@editable*/ line-height:150%; | ||
325 | 302 | /*@editable*/ text-align:left; | ||
326 | 303 | } | ||
327 | 304 | |||
328 | 305 | /** | ||
329 | 306 | * @tab Sidebar | ||
330 | 307 | * @section sidebar link | ||
331 | 308 | * @tip Set the styling for your email's sidebar links. Choose a color that helps them stand out from your text. | ||
332 | 309 | */ | ||
333 | 310 | .sidebarContent div a:link, .sidebarContent div a:visited, /* Yahoo! Mail Override */ .sidebarContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
334 | 311 | /*@editable*/ color:#336699; | ||
335 | 312 | /*@editable*/ font-weight:normal; | ||
336 | 313 | /*@editable*/ text-decoration:underline; | ||
337 | 314 | } | ||
338 | 315 | |||
339 | 316 | .sidebarContent img{ | ||
340 | 317 | display:inline; | ||
341 | 318 | height:auto; | ||
342 | 319 | } | ||
343 | 320 | |||
344 | 321 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: FOOTER /\/\/\/\/\/\/\/\/\/\ */ | ||
345 | 322 | |||
346 | 323 | /** | ||
347 | 324 | * @tab Footer | ||
348 | 325 | * @section footer style | ||
349 | 326 | * @tip Set the background color and top border for your email's footer area. | ||
350 | 327 | * @theme footer | ||
351 | 328 | */ | ||
352 | 329 | #templateFooter{ | ||
353 | 330 | /*@editable*/ background-color:#FAFAFA; | ||
354 | 331 | /*@editable*/ border-top:3px solid #909090; | ||
355 | 332 | } | ||
356 | 333 | |||
357 | 334 | /** | ||
358 | 335 | * @tab Footer | ||
359 | 336 | * @section footer text | ||
360 | 337 | * @tip Set the styling for your email's footer text. Choose a size and color that is easy to read. | ||
361 | 338 | * @theme footer | ||
362 | 339 | */ | ||
363 | 340 | .footerContent div{ | ||
364 | 341 | /*@editable*/ color:#707070; | ||
365 | 342 | /*@editable*/ font-family:Arial; | ||
366 | 343 | /*@editable*/ font-size:11px; | ||
367 | 344 | /*@editable*/ line-height:125%; | ||
368 | 345 | /*@editable*/ text-align:left; | ||
369 | 346 | } | ||
370 | 347 | |||
371 | 348 | /** | ||
372 | 349 | * @tab Footer | ||
373 | 350 | * @section footer link | ||
374 | 351 | * @tip Set the styling for your email's footer links. Choose a color that helps them stand out from your text. | ||
375 | 352 | */ | ||
376 | 353 | .footerContent div a:link, .footerContent div a:visited, /* Yahoo! Mail Override */ .footerContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
377 | 354 | /*@editable*/ color:#336699; | ||
378 | 355 | /*@editable*/ font-weight:normal; | ||
379 | 356 | /*@editable*/ text-decoration:underline; | ||
380 | 357 | } | ||
381 | 358 | |||
382 | 359 | .footerContent img{ | ||
383 | 360 | display:inline; | ||
384 | 361 | } | ||
385 | 362 | |||
386 | 363 | /** | ||
387 | 364 | * @tab Footer | ||
388 | 365 | * @section social bar style | ||
389 | 366 | * @tip Set the background color and border for your email's footer social bar. | ||
390 | 367 | * @theme footer | ||
391 | 368 | */ | ||
392 | 369 | #social{ | ||
393 | 370 | /*@editable*/ background-color:#FFFFFF; | ||
394 | 371 | /*@editable*/ border:0; | ||
395 | 372 | } | ||
396 | 373 | |||
397 | 374 | /** | ||
398 | 375 | * @tab Footer | ||
399 | 376 | * @section social bar style | ||
400 | 377 | * @tip Set the background color and border for your email's footer social bar. | ||
401 | 378 | */ | ||
402 | 379 | #social div{ | ||
403 | 380 | /*@editable*/ text-align:left; | ||
404 | 381 | } | ||
405 | 382 | |||
406 | 383 | /** | ||
407 | 384 | * @tab Footer | ||
408 | 385 | * @section utility bar style | ||
409 | 386 | * @tip Set the background color and border for your email's footer utility bar. | ||
410 | 387 | * @theme footer | ||
411 | 388 | */ | ||
412 | 389 | #utility{ | ||
413 | 390 | /*@editable*/ background-color:#FAFAFA; | ||
414 | 391 | /*@editable*/ border-top:0; | ||
415 | 392 | } | ||
416 | 393 | |||
417 | 394 | /** | ||
418 | 395 | * @tab Footer | ||
419 | 396 | * @section utility bar style | ||
420 | 397 | * @tip Set the background color and border for your email's footer utility bar. | ||
421 | 398 | */ | ||
422 | 399 | #utility div{ | ||
423 | 400 | /*@editable*/ text-align:left; | ||
424 | 401 | } | ||
425 | 402 | |||
426 | 403 | #monkeyRewards img{ | ||
427 | 404 | max-width:170px !important; | ||
428 | 405 | } | ||
429 | 406 | </style> | ||
430 | 407 | </head> | ||
431 | 408 | <body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0"> | ||
432 | 409 | <center> | ||
433 | 410 | <table border="0" cellpadding="0" cellspacing="0" height="100%" width="100%" id="backgroundTable"> | ||
434 | 411 | <tr> | ||
435 | 412 | <td align="center" valign="top"> | ||
436 | 413 | <table border="0" cellpadding="0" cellspacing="0" width="600" id="templateContainer"> | ||
437 | 414 | <tr style="margin: 0px; padding: 0px; background-color: rgb(247, 247, 247);"> | ||
438 | 415 | <td align="center" valign="top"> | ||
439 | 416 | <!-- // Begin Template Header \\ --> | ||
440 | 417 | <table border="0" cellpadding="0" cellspacing="0" width="100%" style="margin: 0px; padding: 0px; background-color: rgb(253, 253, 253);"> | ||
441 | 418 | <tr> | ||
442 | 419 | <td class="headerContent"> | ||
443 | 420 | <img src="https://pbs.twimg.com/profile_images/2137139487/logo-vauxoo-lp.jpg" style="max-width:60px; padding: 2px 2px 2px;" id="headerImage campaign-icon" mc:label="header_image" mc:edit="header_image" mc:allowtext /> | ||
444 | 421 | </td> | ||
445 | 422 | |||
446 | 423 | <td class="headerContent" width="100%" style="padding-left:10px; padding-right:20px;"> | ||
447 | 424 | <div mc:edit="Header_content"> | ||
448 | 425 | <h2> | ||
449 | 426 | NAME_HU | ||
450 | 427 | </h2> | ||
451 | 428 | </div> | ||
452 | 429 | </td> | ||
453 | 430 | </tr> | ||
454 | 431 | </table> | ||
455 | 432 | <!-- // End Template Header \\ --> | ||
456 | 433 | </td> | ||
457 | 434 | </tr> | ||
458 | 435 | <tr> | ||
459 | 436 | <td align="center" style="margin: 0px; padding: 0px; width: 600px; background-color: #951510"> | ||
460 | 437 | <div style="font-size:1.3em; font-family:Arial; color:#FFFFFF;"><b> | ||
461 | 438 | Criterio de Aceptación. | ||
462 | 439 | </b></div> | ||
463 | 440 | </td> | ||
464 | 441 | </tr> | ||
465 | 442 | <tr> | ||
466 | 443 | <td align="center" valign="top"> | ||
467 | 444 | <!-- // Begin Template Body \\ --> | ||
468 | 445 | <table border="0" cellpadding="10" cellspacing="0" width="600" style="margin: 0px; padding: 0px; width: 600px; background-color: rgb(247, 247, 247);"> | ||
469 | 446 | <tr> | ||
470 | 447 | <!-- // Begin Sidebar \\ --> | ||
471 | 448 | <td valign="top" width="180" id="templateSidebar"> | ||
472 | 449 | <table border="0" cellpadding="0" cellspacing="0" width="100%"> | ||
473 | 450 | <tr> | ||
474 | 451 | <td valign="top"> | ||
475 | 452 | </td> | ||
476 | 453 | </tr> | ||
477 | 454 | </table> | ||
478 | 455 | </td> | ||
479 | 456 | <!-- // End Sidebar \\ --> | ||
480 | 457 | <td valign="top" class="bodyContent"> | ||
481 | 458 | |||
482 | 459 | <!-- // Begin Module: Standard Content \\ --> | ||
483 | 460 | <table border="0" cellpadding="10" cellspacing="0" width="600"> | ||
484 | 461 | <tr> | ||
485 | 462 | <td valign="top" style="padding-left:0;"> | ||
486 | 463 | <div mc:edit="std_content00"> | ||
487 | 464 | <h2 class="h2">Estimad@ NAME_OWNER</h2> | ||
488 | 465 | <h3 class="h3"> | ||
489 | 466 | El criterio de aceptación "NAME_CRI" ha sido aceptado por NAME_USER. | ||
490 | 467 | </h3> | ||
491 | 468 | <pre style="font-size:1.1em; font-family:Arial"> | ||
492 | 469 | |||
493 | 470 | Agradeciendo su atención. | ||
494 | 471 | |||
495 | 472 | Ante cualquier duda estamos a su disposición. | ||
496 | 473 | </pre> | ||
497 | 474 | <br /> | ||
498 | 475 | </div> | ||
499 | 476 | </td> | ||
500 | 477 | </tr> | ||
501 | 478 | </table> | ||
502 | 479 | <!-- // End Module: Standard Content \\ --> | ||
503 | 480 | |||
504 | 481 | </td> | ||
505 | 482 | </tr> | ||
506 | 483 | </table> | ||
507 | 484 | <!-- // End Template Body \\ --> | ||
508 | 485 | </td> | ||
509 | 486 | </table> | ||
510 | 487 | <br /> | ||
511 | 488 | </td> | ||
512 | 489 | </tr> | ||
513 | 490 | </table> | ||
514 | 491 | </center> | ||
515 | 492 | </body> | ||
516 | 493 | </html> | ||
517 | 32 | ]]></field> | 494 | ]]></field> |
518 | 33 | </record> | 495 | </record> |
519 | 34 | 496 | ||
521 | 35 | <record id="template_send_email_hu_progress" model="email.template"> | 497 | <record id="template_send_email_hu_progress" model="email.template" forcecreate="True"> |
522 | 36 | <field name="name">User Story in Progress</field> | 498 | <field name="name">User Story in Progress</field> |
523 | 37 | <field name="email_from"></field> | 499 | <field name="email_from"></field> |
524 | 38 | <field name="model_id" ref="user_story.model_user_story" /> | 500 | <field name="model_id" ref="user_story.model_user_story" /> |
525 | @@ -42,14 +504,488 @@ | |||
526 | 42 | <field name="email_to"></field> | 504 | <field name="email_to"></field> |
527 | 43 | <field name="sequence">5</field> | 505 | <field name="sequence">5</field> |
528 | 44 | <field name="body_html"><![CDATA[ | 506 | <field name="body_html"><![CDATA[ |
537 | 45 | <html> | 507 | <html> |
538 | 46 | <head> | 508 | <head> |
539 | 47 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | 509 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> |
540 | 48 | </head> | 510 | <title>*|MC:SUBJECT|*</title> |
541 | 49 | <body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0"> | 511 | <style type="text/css"> |
542 | 50 | Now the "NAME_HU" User Story is Pending, processed by NAME_USER. | 512 | /* Client-specific Styles */ |
543 | 51 | </body> | 513 | #outlook a{padding:0;} /* Force Outlook to provide a "view in browser" button. */ |
544 | 52 | </html> | 514 | body{width:100% !important;} .ReadMsgBody{width:100%;} .ExternalClass{width:100%;} /* Force Hotmail to display emails at full width */ |
545 | 515 | body{-webkit-text-size-adjust:none;} /* Prevent Webkit platforms from changing default text sizes. */ | ||
546 | 516 | |||
547 | 517 | /* Reset Styles */ | ||
548 | 518 | body{margin:0; padding:0;} | ||
549 | 519 | img{border:0; height:auto; line-height:100%; outline:none; text-decoration:none;} | ||
550 | 520 | table td{border-collapse:collapse;} | ||
551 | 521 | #backgroundTable{height:100% !important; margin:0; padding:0; width:100% !important;} | ||
552 | 522 | |||
553 | 523 | /* Template Styles */ | ||
554 | 524 | |||
555 | 525 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: COMMON PAGE ELEMENTS /\/\/\/\/\/\/\/\/\/\ */ | ||
556 | 526 | |||
557 | 527 | /** | ||
558 | 528 | * @tab Page | ||
559 | 529 | * @section background color | ||
560 | 530 | * @tip Set the background color for your email. You may want to choose one that matches your company's branding. | ||
561 | 531 | * @theme page | ||
562 | 532 | */ | ||
563 | 533 | body, #backgroundTable{ | ||
564 | 534 | /*@editable*/ background-color:#FAFAFA; | ||
565 | 535 | } | ||
566 | 536 | |||
567 | 537 | /** | ||
568 | 538 | * @tab Page | ||
569 | 539 | * @section email border | ||
570 | 540 | * @tip Set the border for your email. | ||
571 | 541 | */ | ||
572 | 542 | #templateContainer{ | ||
573 | 543 | /*@editable*/ border:0; | ||
574 | 544 | } | ||
575 | 545 | |||
576 | 546 | /** | ||
577 | 547 | * @tab Page | ||
578 | 548 | * @section heading 1 | ||
579 | 549 | * @tip Set the styling for all first-level headings in your emails. These should be the largest of your headings. | ||
580 | 550 | * @style heading 1 | ||
581 | 551 | */ | ||
582 | 552 | h1, .h1{ | ||
583 | 553 | /*@editable*/ color:#202020; | ||
584 | 554 | display:block; | ||
585 | 555 | /*@editable*/ font-family:Arial; | ||
586 | 556 | /*@editable*/ font-size:40px; | ||
587 | 557 | /*@editable*/ font-weight:bold; | ||
588 | 558 | /*@editable*/ line-height:100%; | ||
589 | 559 | margin-top:2%; | ||
590 | 560 | margin-right:0; | ||
591 | 561 | margin-bottom:1%; | ||
592 | 562 | margin-left:0; | ||
593 | 563 | /*@editable*/ text-align:left; | ||
594 | 564 | } | ||
595 | 565 | |||
596 | 566 | /** | ||
597 | 567 | * @tab Page | ||
598 | 568 | * @section heading 2 | ||
599 | 569 | * @tip Set the styling for all second-level headings in your emails. | ||
600 | 570 | * @style heading 2 | ||
601 | 571 | */ | ||
602 | 572 | h2, .h2{ | ||
603 | 573 | /*@editable*/ color:#404040; | ||
604 | 574 | display:block; | ||
605 | 575 | /*@editable*/ font-family:Arial; | ||
606 | 576 | /*@editable*/ font-size:18px; | ||
607 | 577 | /*@editable*/ font-weight:bold; | ||
608 | 578 | /*@editable*/ line-height:100%; | ||
609 | 579 | margin-top:2%; | ||
610 | 580 | margin-right:0; | ||
611 | 581 | margin-bottom:1%; | ||
612 | 582 | margin-left:0; | ||
613 | 583 | /*@editable*/ text-align:left; | ||
614 | 584 | } | ||
615 | 585 | |||
616 | 586 | /** | ||
617 | 587 | * @tab Page | ||
618 | 588 | * @section heading 3 | ||
619 | 589 | * @tip Set the styling for all third-level headings in your emails. | ||
620 | 590 | * @style heading 3 | ||
621 | 591 | */ | ||
622 | 592 | h3, .h3{ | ||
623 | 593 | /*@editable*/ color:#606060; | ||
624 | 594 | display:block; | ||
625 | 595 | /*@editable*/ font-family:Arial; | ||
626 | 596 | /*@editable*/ font-size:16px; | ||
627 | 597 | /*@editable*/ font-weight:bold; | ||
628 | 598 | /*@editable*/ line-height:100%; | ||
629 | 599 | margin-top:2%; | ||
630 | 600 | margin-right:0; | ||
631 | 601 | margin-bottom:1%; | ||
632 | 602 | margin-left:0; | ||
633 | 603 | /*@editable*/ text-align:left; | ||
634 | 604 | } | ||
635 | 605 | |||
636 | 606 | /** | ||
637 | 607 | * @tab Page | ||
638 | 608 | * @section heading 4 | ||
639 | 609 | * @tip Set the styling for all fourth-level headings in your emails. These should be the smallest of your headings. | ||
640 | 610 | * @style heading 4 | ||
641 | 611 | */ | ||
642 | 612 | h4, .h4{ | ||
643 | 613 | /*@editable*/ color:#808080; | ||
644 | 614 | display:block; | ||
645 | 615 | /*@editable*/ font-family:Arial; | ||
646 | 616 | /*@editable*/ font-size:14px; | ||
647 | 617 | /*@editable*/ font-weight:bold; | ||
648 | 618 | /*@editable*/ line-height:100%; | ||
649 | 619 | margin-top:2%; | ||
650 | 620 | margin-right:0; | ||
651 | 621 | margin-bottom:1%; | ||
652 | 622 | margin-left:0; | ||
653 | 623 | /*@editable*/ text-align:left; | ||
654 | 624 | } | ||
655 | 625 | |||
656 | 626 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: PREHEADER /\/\/\/\/\/\/\/\/\/\ */ | ||
657 | 627 | |||
658 | 628 | /** | ||
659 | 629 | * @tab Header | ||
660 | 630 | * @section preheader style | ||
661 | 631 | * @tip Set the background color for your email's preheader area. | ||
662 | 632 | * @theme page | ||
663 | 633 | */ | ||
664 | 634 | #templatePreheader{ | ||
665 | 635 | /*@editable*/ background-color:#FAFAFA; | ||
666 | 636 | } | ||
667 | 637 | |||
668 | 638 | /** | ||
669 | 639 | * @tab Header | ||
670 | 640 | * @section preheader text | ||
671 | 641 | * @tip Set the styling for your email's preheader text. Choose a size and color that is easy to read. | ||
672 | 642 | */ | ||
673 | 643 | .preheaderContent div{ | ||
674 | 644 | /*@editable*/ color:#707070; | ||
675 | 645 | /*@editable*/ font-family:Arial; | ||
676 | 646 | /*@editable*/ font-size:10px; | ||
677 | 647 | /*@editable*/ line-height:100%; | ||
678 | 648 | /*@editable*/ text-align:left; | ||
679 | 649 | } | ||
680 | 650 | |||
681 | 651 | /** | ||
682 | 652 | * @tab Header | ||
683 | 653 | * @section preheader link | ||
684 | 654 | * @tip Set the styling for your email's preheader links. Choose a color that helps them stand out from your text. | ||
685 | 655 | */ | ||
686 | 656 | .preheaderContent div a:link, .preheaderContent div a:visited, /* Yahoo! Mail Override */ .preheaderContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
687 | 657 | /*@editable*/ color:#336699; | ||
688 | 658 | /*@editable*/ font-weight:normal; | ||
689 | 659 | /*@editable*/ text-decoration:underline; | ||
690 | 660 | } | ||
691 | 661 | |||
692 | 662 | /** | ||
693 | 663 | * @tab Header | ||
694 | 664 | * @section social bar style | ||
695 | 665 | * @tip Set the background color and border for your email's footer social bar. | ||
696 | 666 | */ | ||
697 | 667 | #social div{ | ||
698 | 668 | /*@editable*/ text-align:right; | ||
699 | 669 | } | ||
700 | 670 | |||
701 | 671 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: HEADER /\/\/\/\/\/\/\/\/\/\ */ | ||
702 | 672 | |||
703 | 673 | /** | ||
704 | 674 | * @tab Header | ||
705 | 675 | * @section header style | ||
706 | 676 | * @tip Set the background color and border for your email's header area. | ||
707 | 677 | * @theme header | ||
708 | 678 | */ | ||
709 | 679 | #templateHeader{ | ||
710 | 680 | /*@editable*/ background-color:#FFFFFF; | ||
711 | 681 | /*@editable*/ border-bottom:5px solid #505050; | ||
712 | 682 | } | ||
713 | 683 | |||
714 | 684 | /** | ||
715 | 685 | * @tab Header | ||
716 | 686 | * @section header text | ||
717 | 687 | * @tip Set the styling for your email's header text. Choose a size and color that is easy to read. | ||
718 | 688 | */ | ||
719 | 689 | .headerContent{ | ||
720 | 690 | /*@editable*/ color:#202020; | ||
721 | 691 | /*@editable*/ font-family:Arial; | ||
722 | 692 | /*@editable*/ font-size:34px; | ||
723 | 693 | /*@editable*/ font-weight:bold; | ||
724 | 694 | /*@editable*/ line-height:100%; | ||
725 | 695 | /*@editable*/ padding:10px; | ||
726 | 696 | /*@editable*/ text-align:right; | ||
727 | 697 | /*@editable*/ vertical-align:middle; | ||
728 | 698 | } | ||
729 | 699 | |||
730 | 700 | /** | ||
731 | 701 | * @tab Header | ||
732 | 702 | * @section header link | ||
733 | 703 | * @tip Set the styling for your email's header links. Choose a color that helps them stand out from your text. | ||
734 | 704 | */ | ||
735 | 705 | .headerContent a:link, .headerContent a:visited, /* Yahoo! Mail Override */ .headerContent a .yshortcuts /* Yahoo! Mail Override */{ | ||
736 | 706 | /*@editable*/ color:#336699; | ||
737 | 707 | /*@editable*/ font-weight:normal; | ||
738 | 708 | /*@editable*/ text-decoration:underline; | ||
739 | 709 | } | ||
740 | 710 | |||
741 | 711 | #headerImage{ | ||
742 | 712 | height:auto; | ||
743 | 713 | max-width:600px !important; | ||
744 | 714 | } | ||
745 | 715 | |||
746 | 716 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: MAIN BODY /\/\/\/\/\/\/\/\/\/\ */ | ||
747 | 717 | |||
748 | 718 | /** | ||
749 | 719 | * @tab Body | ||
750 | 720 | * @section body style | ||
751 | 721 | * @tip Set the background color for your email's body area. | ||
752 | 722 | */ | ||
753 | 723 | #templateContainer, .bodyContent{ | ||
754 | 724 | /*@editable*/ background-color:#FDFDFD; | ||
755 | 725 | } | ||
756 | 726 | |||
757 | 727 | /** | ||
758 | 728 | * @tab Body | ||
759 | 729 | * @section body text | ||
760 | 730 | * @tip Set the styling for your email's main content text. Choose a size and color that is easy to read. | ||
761 | 731 | * @theme main | ||
762 | 732 | */ | ||
763 | 733 | .bodyContent div{ | ||
764 | 734 | /*@editable*/ color:#505050; | ||
765 | 735 | /*@editable*/ font-family:Arial; | ||
766 | 736 | /*@editable*/ font-size:14px; | ||
767 | 737 | /*@editable*/ line-height:150%; | ||
768 | 738 | /*@editable*/ text-align:justify; | ||
769 | 739 | } | ||
770 | 740 | |||
771 | 741 | /** | ||
772 | 742 | * @tab Body | ||
773 | 743 | * @section body link | ||
774 | 744 | * @tip Set the styling for your email's main content links. Choose a color that helps them stand out from your text. | ||
775 | 745 | */ | ||
776 | 746 | .bodyContent div a:link, .bodyContent div a:visited, /* Yahoo! Mail Override */ .bodyContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
777 | 747 | /*@editable*/ color:#336699; | ||
778 | 748 | /*@editable*/ font-weight:normal; | ||
779 | 749 | /*@editable*/ text-decoration:underline; | ||
780 | 750 | } | ||
781 | 751 | |||
782 | 752 | .bodyContent img{ | ||
783 | 753 | display:inline; | ||
784 | 754 | height:auto; | ||
785 | 755 | } | ||
786 | 756 | |||
787 | 757 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: SIDEBAR /\/\/\/\/\/\/\/\/\/\ */ | ||
788 | 758 | |||
789 | 759 | /** | ||
790 | 760 | * @tab Sidebar | ||
791 | 761 | * @section sidebar style | ||
792 | 762 | * @tip Set the background color and border for your email's sidebar area. | ||
793 | 763 | */ | ||
794 | 764 | #templateSidebar{ | ||
795 | 765 | /*@editable*/ background-color:#FDFDFD; | ||
796 | 766 | } | ||
797 | 767 | |||
798 | 768 | /** | ||
799 | 769 | * @tab Sidebar | ||
800 | 770 | * @section sidebar style | ||
801 | 771 | * @tip Set the background color and border for your email's sidebar area. | ||
802 | 772 | */ | ||
803 | 773 | .sidebarContent{ | ||
804 | 774 | /*@editable*/ border-right:1px solid #DDDDDD; | ||
805 | 775 | } | ||
806 | 776 | |||
807 | 777 | /** | ||
808 | 778 | * @tab Sidebar | ||
809 | 779 | * @section sidebar text | ||
810 | 780 | * @tip Set the styling for your email's sidebar text. Choose a size and color that is easy to read. | ||
811 | 781 | */ | ||
812 | 782 | .sidebarContent div{ | ||
813 | 783 | /*@editable*/ color:#505050; | ||
814 | 784 | /*@editable*/ font-family:Arial; | ||
815 | 785 | /*@editable*/ font-size:10px; | ||
816 | 786 | /*@editable*/ line-height:150%; | ||
817 | 787 | /*@editable*/ text-align:left; | ||
818 | 788 | } | ||
819 | 789 | |||
820 | 790 | /** | ||
821 | 791 | * @tab Sidebar | ||
822 | 792 | * @section sidebar link | ||
823 | 793 | * @tip Set the styling for your email's sidebar links. Choose a color that helps them stand out from your text. | ||
824 | 794 | */ | ||
825 | 795 | .sidebarContent div a:link, .sidebarContent div a:visited, /* Yahoo! Mail Override */ .sidebarContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
826 | 796 | /*@editable*/ color:#336699; | ||
827 | 797 | /*@editable*/ font-weight:normal; | ||
828 | 798 | /*@editable*/ text-decoration:underline; | ||
829 | 799 | } | ||
830 | 800 | |||
831 | 801 | .sidebarContent img{ | ||
832 | 802 | display:inline; | ||
833 | 803 | height:auto; | ||
834 | 804 | } | ||
835 | 805 | |||
836 | 806 | /* /\/\/\/\/\/\/\/\/\/\ STANDARD STYLING: FOOTER /\/\/\/\/\/\/\/\/\/\ */ | ||
837 | 807 | |||
838 | 808 | /** | ||
839 | 809 | * @tab Footer | ||
840 | 810 | * @section footer style | ||
841 | 811 | * @tip Set the background color and top border for your email's footer area. | ||
842 | 812 | * @theme footer | ||
843 | 813 | */ | ||
844 | 814 | #templateFooter{ | ||
845 | 815 | /*@editable*/ background-color:#FAFAFA; | ||
846 | 816 | /*@editable*/ border-top:3px solid #909090; | ||
847 | 817 | } | ||
848 | 818 | |||
849 | 819 | /** | ||
850 | 820 | * @tab Footer | ||
851 | 821 | * @section footer text | ||
852 | 822 | * @tip Set the styling for your email's footer text. Choose a size and color that is easy to read. | ||
853 | 823 | * @theme footer | ||
854 | 824 | */ | ||
855 | 825 | .footerContent div{ | ||
856 | 826 | /*@editable*/ color:#707070; | ||
857 | 827 | /*@editable*/ font-family:Arial; | ||
858 | 828 | /*@editable*/ font-size:11px; | ||
859 | 829 | /*@editable*/ line-height:125%; | ||
860 | 830 | /*@editable*/ text-align:left; | ||
861 | 831 | } | ||
862 | 832 | |||
863 | 833 | /** | ||
864 | 834 | * @tab Footer | ||
865 | 835 | * @section footer link | ||
866 | 836 | * @tip Set the styling for your email's footer links. Choose a color that helps them stand out from your text. | ||
867 | 837 | */ | ||
868 | 838 | .footerContent div a:link, .footerContent div a:visited, /* Yahoo! Mail Override */ .footerContent div a .yshortcuts /* Yahoo! Mail Override */{ | ||
869 | 839 | /*@editable*/ color:#336699; | ||
870 | 840 | /*@editable*/ font-weight:normal; | ||
871 | 841 | /*@editable*/ text-decoration:underline; | ||
872 | 842 | } | ||
873 | 843 | |||
874 | 844 | .footerContent img{ | ||
875 | 845 | display:inline; | ||
876 | 846 | } | ||
877 | 847 | |||
878 | 848 | /** | ||
879 | 849 | * @tab Footer | ||
880 | 850 | * @section social bar style | ||
881 | 851 | * @tip Set the background color and border for your email's footer social bar. | ||
882 | 852 | * @theme footer | ||
883 | 853 | */ | ||
884 | 854 | #social{ | ||
885 | 855 | /*@editable*/ background-color:#FFFFFF; | ||
886 | 856 | /*@editable*/ border:0; | ||
887 | 857 | } | ||
888 | 858 | |||
889 | 859 | /** | ||
890 | 860 | * @tab Footer | ||
891 | 861 | * @section social bar style | ||
892 | 862 | * @tip Set the background color and border for your email's footer social bar. | ||
893 | 863 | */ | ||
894 | 864 | #social div{ | ||
895 | 865 | /*@editable*/ text-align:left; | ||
896 | 866 | } | ||
897 | 867 | |||
898 | 868 | /** | ||
899 | 869 | * @tab Footer | ||
900 | 870 | * @section utility bar style | ||
901 | 871 | * @tip Set the background color and border for your email's footer utility bar. | ||
902 | 872 | * @theme footer | ||
903 | 873 | */ | ||
904 | 874 | #utility{ | ||
905 | 875 | /*@editable*/ background-color:#FAFAFA; | ||
906 | 876 | /*@editable*/ border-top:0; | ||
907 | 877 | } | ||
908 | 878 | |||
909 | 879 | /** | ||
910 | 880 | * @tab Footer | ||
911 | 881 | * @section utility bar style | ||
912 | 882 | * @tip Set the background color and border for your email's footer utility bar. | ||
913 | 883 | */ | ||
914 | 884 | #utility div{ | ||
915 | 885 | /*@editable*/ text-align:left; | ||
916 | 886 | } | ||
917 | 887 | |||
918 | 888 | #monkeyRewards img{ | ||
919 | 889 | max-width:170px !important; | ||
920 | 890 | } | ||
921 | 891 | </style> | ||
922 | 892 | </head> | ||
923 | 893 | <body leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0"> | ||
924 | 894 | <center> | ||
925 | 895 | <table border="0" cellpadding="0" cellspacing="0" height="100%" width="100%" id="backgroundTable"> | ||
926 | 896 | <tr> | ||
927 | 897 | <td align="center" valign="top"> | ||
928 | 898 | <table border="0" cellpadding="0" cellspacing="0" width="600" id="templateContainer"> | ||
929 | 899 | <tr style="margin: 0px; padding: 0px; background-color: rgb(247, 247, 247);"> | ||
930 | 900 | <td align="center" valign="top"> | ||
931 | 901 | <!-- // Begin Template Header \\ --> | ||
932 | 902 | <table border="0" cellpadding="0" cellspacing="0" width="100%" style="margin: 0px; padding: 0px; background-color: rgb(253, 253, 253);"> | ||
933 | 903 | <tr> | ||
934 | 904 | <td class="headerContent"> | ||
935 | 905 | <img src="https://pbs.twimg.com/profile_images/2137139487/logo-vauxoo-lp.jpg" style="max-width:60px; padding: 2px 2px 2px;" id="headerImage campaign-icon" mc:label="header_image" mc:edit="header_image" mc:allowtext /> | ||
936 | 906 | </td> | ||
937 | 907 | |||
938 | 908 | <td class="headerContent" width="100%" style="padding-left:10px; padding-right:20px;"> | ||
939 | 909 | <div mc:edit="Header_content"> | ||
940 | 910 | <h2> | ||
941 | 911 | NAME_HU | ||
942 | 912 | </h2> | ||
943 | 913 | </div> | ||
944 | 914 | </td> | ||
945 | 915 | </tr> | ||
946 | 916 | </table> | ||
947 | 917 | <!-- // End Template Header \\ --> | ||
948 | 918 | </td> | ||
949 | 919 | </tr> | ||
950 | 920 | <tr> | ||
951 | 921 | <td align="center" style="margin: 0px; padding: 0px; width: 600px; background-color: #951510"> | ||
952 | 922 | <div style="font-size:1.3em; font-family:Arial; color:#FFFFFF;"><b> | ||
953 | 923 | Historia de Usuario | ||
954 | 924 | </b></div> | ||
955 | 925 | </td> | ||
956 | 926 | </tr> | ||
957 | 927 | <tr> | ||
958 | 928 | <td align="center" valign="top"> | ||
959 | 929 | <!-- // Begin Template Body \\ --> | ||
960 | 930 | <table border="0" cellpadding="10" cellspacing="0" width="600" style="margin: 0px; padding: 0px; width: 600px; background-color: rgb(247, 247, 247);"> | ||
961 | 931 | <tr> | ||
962 | 932 | <!-- // Begin Sidebar \\ --> | ||
963 | 933 | <td valign="top" width="180" id="templateSidebar"> | ||
964 | 934 | <table border="0" cellpadding="0" cellspacing="0" width="100%"> | ||
965 | 935 | <tr> | ||
966 | 936 | <td valign="top"> | ||
967 | 937 | </td> | ||
968 | 938 | </tr> | ||
969 | 939 | </table> | ||
970 | 940 | </td> | ||
971 | 941 | <!-- // End Sidebar \\ --> | ||
972 | 942 | <td valign="top" class="bodyContent"> | ||
973 | 943 | |||
974 | 944 | <!-- // Begin Module: Standard Content \\ --> | ||
975 | 945 | <table border="0" cellpadding="10" cellspacing="0" width="600"> | ||
976 | 946 | <tr> | ||
977 | 947 | <td valign="top" style="padding-left:0;"> | ||
978 | 948 | <div mc:edit="std_content00"> | ||
979 | 949 | <h2 class="h2">Estimad@ NAME_OWNER</h2> | ||
980 | 950 | <h3 class="h3"> | ||
981 | 951 | La Historia de Usuario ha sido culminada, se encuentra actualmente en espera de que usted proceda a realizar la verificación de la misma, con sus Criterios de Aceptación. | ||
982 | 952 | </h3> | ||
983 | 953 | <pre style="font-size:1.1em; font-family:Arial"> | ||
984 | 954 | El proceso a seguir es: | ||
985 | 955 | |||
986 | 956 | 1) Entrar en la base de datos de Vauxoo a través del link ubicado al final de este email. | ||
987 | 957 | 2) Seleccionar el botón "editar" en la Historia de Usuario. | ||
988 | 958 | 3) Revisar los Criterios de Aceptación. | ||
989 | 959 | 4) Verificar que los Criterios de Aceptación se cumplan. | ||
990 | 960 | 5) Una vez verificado cada criterio seleccionar la casilla "aceptar" lo que indica que se está conforme con el resultado revisado. | ||
991 | 961 | |||
992 | 962 | Todos los criterios de aceptación serán re-validados junto a un consultor de Vauxoo al final del Sprint, de tal manera de cerrar formalmente el cumplimiento del requerimiento. | ||
993 | 963 | |||
994 | 964 | |||
995 | 965 | Agradeciendo su atención. | ||
996 | 966 | |||
997 | 967 | Ante cualquier duda estamos a su disposición. | ||
998 | 968 | </pre> | ||
999 | 969 | <br /> | ||
1000 | 970 | </div> | ||
1001 | 971 | </td> | ||
1002 | 972 | </tr> | ||
1003 | 973 | </table> | ||
1004 | 974 | <!-- // End Module: Standard Content \\ --> | ||
1005 | 975 | |||
1006 | 976 | </td> | ||
1007 | 977 | </tr> | ||
1008 | 978 | </table> | ||
1009 | 979 | <!-- // End Template Body \\ --> | ||
1010 | 980 | </td> | ||
1011 | 981 | </table> | ||
1012 | 982 | <br /> | ||
1013 | 983 | </td> | ||
1014 | 984 | </tr> | ||
1015 | 985 | </table> | ||
1016 | 986 | </center> | ||
1017 | 987 | </body> | ||
1018 | 988 | </html> | ||
1019 | 53 | 989 | ||
1020 | 54 | ]]></field> | 990 | ]]></field> |
1021 | 55 | </record> | 991 | </record> |
1022 | 56 | 992 | ||
1023 | === modified file 'user_story/model/user_story.py' | |||
1024 | --- user_story/model/user_story.py 2014-03-17 21:49:54 +0000 | |||
1025 | +++ user_story/model/user_story.py 2014-03-26 20:24:07 +0000 | |||
1026 | @@ -24,6 +24,7 @@ | |||
1027 | 24 | from openerp.tools.translate import _ | 24 | from openerp.tools.translate import _ |
1028 | 25 | 25 | ||
1029 | 26 | import time | 26 | import time |
1030 | 27 | import unicodedata | ||
1031 | 27 | 28 | ||
1032 | 28 | _US_STATE = [('draft', 'New'), ('open', 'In Progress'), ( | 29 | _US_STATE = [('draft', 'New'), ('open', 'In Progress'), ( |
1033 | 29 | 'pending', 'Pending'), ('done', 'Done'), ('cancelled', 'Cancelled')] | 30 | 'pending', 'Pending'), ('done', 'Done'), ('cancelled', 'Cancelled')] |
1034 | @@ -82,9 +83,118 @@ | |||
1035 | 82 | ('userstory_id', '=', ids[0])]) | 83 | ('userstory_id', '=', ids[0])]) |
1036 | 83 | task_obj.write(cr, uid, task_ids, { | 84 | task_obj.write(cr, uid, task_ids, { |
1037 | 84 | 'sprint_id': vals.get('sk_id')}, context=context) | 85 | 'sprint_id': vals.get('sk_id')}, context=context) |
1038 | 86 | |||
1039 | 87 | if 'accep_crit_ids' in vals: | ||
1040 | 88 | ac_obj = self.pool.get('acceptability.criteria') | ||
1041 | 89 | criteria = [False, False] | ||
1042 | 90 | for ac in vals.get('accep_crit_ids'): | ||
1043 | 91 | if ac[2] and ac[2].get('accepted', False): | ||
1044 | 92 | if ac[1]: | ||
1045 | 93 | ac_brw = ac_obj.browse(cr, uid, ac[1] , context=context) | ||
1046 | 94 | criteria[1] = ac_brw.name | ||
1047 | 95 | else: | ||
1048 | 96 | criteria[1] = ac[2].get('name', False) | ||
1049 | 97 | |||
1050 | 98 | body = self.body_criteria(cr, uid, ids, 'template_send_email_hu', criteria[1], context) | ||
1051 | 99 | hu = self.browse(cr, uid, ids[0], context=context) | ||
1052 | 100 | subject = 'Se acepta Criterio de Aceptacion "%s"... en la Historia de Usuario %s' % (criteria[1][:30],hu.id) | ||
1053 | 101 | self.send_mail_hu(cr, uid, ids, subject, body, hu.id, users=False, context=context) | ||
1054 | 85 | return super(user_story, self).write(cr, uid, ids, | 102 | return super(user_story, self).write(cr, uid, ids, |
1055 | 86 | vals, context=context) | 103 | vals, context=context) |
1056 | 87 | 104 | ||
1057 | 105 | def body_progress(self, cr, uid, ids, template, hu, context=None): | ||
1058 | 106 | imd_obj = self.pool.get('ir.model.data') | ||
1059 | 107 | template_ids = imd_obj.search( | ||
1060 | 108 | cr, uid, [('model', '=', 'email.template'), ('name', '=', template)]) | ||
1061 | 109 | if template_ids: | ||
1062 | 110 | res_id = imd_obj.read( | ||
1063 | 111 | cr, uid, template_ids, ['res_id'])[0]['res_id'] | ||
1064 | 112 | body_html = self.pool.get('email.template').read( | ||
1065 | 113 | cr, uid, res_id, ['body_html']).get('body_html') | ||
1066 | 114 | |||
1067 | 115 | user_id = self.pool.get('res.users').browse(cr,uid,[uid],context=context)[0] | ||
1068 | 116 | hu = self.browse(cr, uid, ids[0], context=context) | ||
1069 | 117 | |||
1070 | 118 | return body_html | ||
1071 | 119 | else: | ||
1072 | 120 | return False | ||
1073 | 121 | |||
1074 | 122 | def body_criteria(self, cr, uid, ids, template, criteria, context=None): | ||
1075 | 123 | imd_obj = self.pool.get('ir.model.data') | ||
1076 | 124 | template_ids = imd_obj.search( | ||
1077 | 125 | cr, uid, [('model', '=', 'email.template'), ('name', '=', template)]) | ||
1078 | 126 | if template_ids: | ||
1079 | 127 | res_id = imd_obj.read( | ||
1080 | 128 | cr, uid, template_ids, ['res_id'])[0]['res_id'] | ||
1081 | 129 | body_html = self.pool.get('email.template').read( | ||
1082 | 130 | cr, uid, res_id, ['body_html']).get('body_html') | ||
1083 | 131 | |||
1084 | 132 | user_id = self.pool.get('res.users').browse(cr,uid,[uid],context=context)[0] | ||
1085 | 133 | hu = self.browse(cr, uid, ids[0], context=context) | ||
1086 | 134 | |||
1087 | 135 | body_html = body_html.replace('NAME_OWNER', hu.owner) | ||
1088 | 136 | body_html = body_html.replace('NAME_USER', user_id.name) | ||
1089 | 137 | body_html = body_html.replace('NAME_CRI', criteria) | ||
1090 | 138 | body_html = body_html.replace('NAME_HU', hu.name) | ||
1091 | 139 | |||
1092 | 140 | return body_html | ||
1093 | 141 | |||
1094 | 142 | else: | ||
1095 | 143 | return False | ||
1096 | 144 | |||
1097 | 145 | |||
1098 | 146 | def send_mail_hu(self, cr, uid, ids, subject, body, res_id, users=[], context=None): | ||
1099 | 147 | if not users: | ||
1100 | 148 | followers = self.read(cr, uid, ids[0], [ | ||
1101 | 149 | 'message_follower_ids'])['message_follower_ids'] | ||
1102 | 150 | else: | ||
1103 | 151 | followers = [] | ||
1104 | 152 | user_obj = self.pool.get('res.users') | ||
1105 | 153 | hu = self.browse(cr, uid, res_id, context=context) | ||
1106 | 154 | |||
1107 | 155 | owner_name = unicodedata.normalize('NFKD', hu.owner) | ||
1108 | 156 | owner_name = owner_name.encode('ASCII','ignore') | ||
1109 | 157 | owner_id = user_obj.search(cr, uid, [('name','=',owner_name)], context=context) | ||
1110 | 158 | |||
1111 | 159 | if hu.user_id and hu.user_id.partner_id: | ||
1112 | 160 | followers.append(hu.user_id.partner_id.id) | ||
1113 | 161 | if hu.user_execute_id and hu.user_execute_id.partner_id: | ||
1114 | 162 | followers.append(hu.user_execute_id.partner_id.id) | ||
1115 | 163 | if owner_id and len(owner_id)==1: | ||
1116 | 164 | user_o = user_obj.browse(cr,uid,owner_id,context=context) | ||
1117 | 165 | followers.append( user_o[0].partner_id.id) | ||
1118 | 166 | |||
1119 | 167 | context.update({ | ||
1120 | 168 | 'default_body': body, | ||
1121 | 169 | }) | ||
1122 | 170 | user_id = self.pool.get('res.users').browse(cr,uid,[uid],context=context)[0] | ||
1123 | 171 | |||
1124 | 172 | mail_mail = self.pool.get('mail.mail') | ||
1125 | 173 | mail_id = mail_mail.create(cr, uid, | ||
1126 | 174 | { | ||
1127 | 175 | 'model': 'user.story', | ||
1128 | 176 | 'res_id': res_id, | ||
1129 | 177 | 'subject': subject, | ||
1130 | 178 | 'body_html': body, | ||
1131 | 179 | 'auto_delete': False, | ||
1132 | 180 | 'email_from': user_id.email, | ||
1133 | 181 | }, context=context) | ||
1134 | 182 | mail_mail.send(cr, uid, [mail_id], | ||
1135 | 183 | recipient_ids=followers, | ||
1136 | 184 | context=context) | ||
1137 | 185 | |||
1138 | 186 | |||
1139 | 187 | return False | ||
1140 | 188 | |||
1141 | 189 | def create(self, cr, uid, vals, context=None): | ||
1142 | 190 | if context is None: context = {} | ||
1143 | 191 | # Prevent double project creation when 'use_tasks' is checked! | ||
1144 | 192 | context = dict(context, user_story_creation_in_progress=True) | ||
1145 | 193 | context['name'] = "User Story / %s" % (vals['name']) | ||
1146 | 194 | if vals.get('type', False) not in ('template','contract'): | ||
1147 | 195 | vals['type'] = 'contract' | ||
1148 | 196 | user_story_id = super(user_story, self).create(cr, uid, vals, context=context) | ||
1149 | 197 | return user_story_id | ||
1150 | 88 | 198 | ||
1151 | 89 | _columns = { | 199 | _columns = { |
1152 | 90 | 'name': fields.char('Title', size=255, required=True, readonly=False, | 200 | 'name': fields.char('Title', size=255, required=True, readonly=False, |
1153 | @@ -144,6 +254,11 @@ | |||
1154 | 144 | return self.write(cr, uid, ids, {'state': 'open'}, context=context) | 254 | return self.write(cr, uid, ids, {'state': 'open'}, context=context) |
1155 | 145 | 255 | ||
1156 | 146 | def do_pending(self, cr, uid, ids, context=None): | 256 | def do_pending(self, cr, uid, ids, context=None): |
1157 | 257 | body = self.body_criteria(cr, uid, ids, 'template_send_email_hu_progress', 'hu', context) | ||
1158 | 258 | hu_model = self.pool.get('user.story') | ||
1159 | 259 | hu = hu_model.browse(cr, uid, ids[0], context=context) | ||
1160 | 260 | subject = 'The User Story with ID %s, "%s...", is now in Pending state' % ( hu.id, hu.name[:30] ) | ||
1161 | 261 | self.send_mail_hu(cr, uid, ids, subject, body, hu.id, users=True, context=context) | ||
1162 | 147 | return self.write(cr, uid, ids, {'state': 'pending'}, context=context) | 262 | return self.write(cr, uid, ids, {'state': 'pending'}, context=context) |
1163 | 148 | 263 | ||
1164 | 149 | def do_done(self, cr, uid, ids, context=None): | 264 | def do_done(self, cr, uid, ids, context=None): |
1165 | 150 | 265 | ||
1166 | === modified file 'user_story/view/userstory_view.xml' | |||
1167 | --- user_story/view/userstory_view.xml 2014-03-14 21:54:48 +0000 | |||
1168 | +++ user_story/view/userstory_view.xml 2014-03-26 20:24:07 +0000 | |||
1169 | @@ -101,8 +101,6 @@ | |||
1170 | 101 | <field name="name"/> | 101 | <field name="name"/> |
1171 | 102 | <field name="scenario"/> | 102 | <field name="scenario"/> |
1172 | 103 | <field name="accepted"/> | 103 | <field name="accepted"/> |
1173 | 104 | <field name="development"/> | ||
1174 | 105 | <field name="difficulty"/> | ||
1175 | 106 | </tree> | 104 | </tree> |
1176 | 107 | </field> | 105 | </field> |
1177 | 108 | </page> | 106 | </page> |
1178 | 109 | 107 | ||
1179 | === modified file 'user_story_long_term/__openerp__.py' | |||
1180 | --- user_story_long_term/__openerp__.py 2014-03-25 15:19:09 +0000 | |||
1181 | +++ user_story_long_term/__openerp__.py 2014-03-26 20:24:07 +0000 | |||
1182 | @@ -50,7 +50,7 @@ | |||
1183 | 50 | #'security/ir.model.access.csv', | 50 | #'security/ir.model.access.csv', |
1184 | 51 | 'user_story_long_term_view.xml', | 51 | 'user_story_long_term_view.xml', |
1185 | 52 | 'workflow/user_story_long_term_workflow.xml', | 52 | 'workflow/user_story_long_term_workflow.xml', |
1187 | 53 | 'data/user_story_template.xml', | 53 | #'data/user_story_template.xml', |
1188 | 54 | #'wizard/user_story_compute_phases_view.xml', | 54 | #'wizard/user_story_compute_phases_view.xml', |
1189 | 55 | #'wizard/user_story_compute_tasks_view.xml', | 55 | #'wizard/user_story_compute_tasks_view.xml', |
1190 | 56 | ], | 56 | ], |
1191 | 57 | 57 | ||
1192 | === modified file 'user_story_long_term/user_story_long_term.py' | |||
1193 | --- user_story_long_term/user_story_long_term.py 2014-03-25 15:15:07 +0000 | |||
1194 | +++ user_story_long_term/user_story_long_term.py 2014-03-26 20:24:07 +0000 | |||
1195 | @@ -232,121 +232,6 @@ | |||
1196 | 232 | class user_story(osv.Model): | 232 | class user_story(osv.Model): |
1197 | 233 | _inherit = 'user.story' | 233 | _inherit = 'user.story' |
1198 | 234 | 234 | ||
1199 | 235 | def body_progress(self, cr, uid, ids, template, hu, context=None): | ||
1200 | 236 | imd_obj = self.pool.get('ir.model.data') | ||
1201 | 237 | template_ids = imd_obj.search( | ||
1202 | 238 | cr, uid, [('model', '=', 'email.template'), ('name', '=', template)]) | ||
1203 | 239 | if template_ids: | ||
1204 | 240 | res_id = imd_obj.read( | ||
1205 | 241 | cr, uid, template_ids, ['res_id'])[0]['res_id'] | ||
1206 | 242 | body_html = self.pool.get('email.template').read( | ||
1207 | 243 | cr, uid, res_id, ['body_html']).get('body_html') | ||
1208 | 244 | |||
1209 | 245 | user_id = self.pool.get('res.users').browse(cr,uid,[uid],context=context)[0] | ||
1210 | 246 | hu = self.browse(cr, uid, ids[0], context=context) | ||
1211 | 247 | |||
1212 | 248 | #body_html = body_html.replace('NAME_HU',str(hu.id)) | ||
1213 | 249 | return body_html | ||
1214 | 250 | else: | ||
1215 | 251 | return False | ||
1216 | 252 | |||
1217 | 253 | |||
1218 | 254 | def do_pending(self, cr, uid, ids, context=None): | ||
1219 | 255 | |||
1220 | 256 | body = self.body_criteria(cr, uid, ids, 'template_send_email_hu_progress', 'hu', context) | ||
1221 | 257 | hu_model = self.pool.get('user.story') | ||
1222 | 258 | hu = hu_model.browse(cr, uid, ids[0], context=context) | ||
1223 | 259 | subject = 'The User Story with ID %s, "%s...", is now in Pending state' % ( hu.id, hu.name[:30] ) | ||
1224 | 260 | self.send_mail_hu(cr, uid, ids, subject, body, hu.id, users=True, context=context) | ||
1225 | 261 | |||
1226 | 262 | return super(user_story, self).do_pending(cr, uid, ids, context=context) | ||
1227 | 263 | |||
1228 | 264 | def body_criteria(self, cr, uid, ids, template, criteria, context=None): | ||
1229 | 265 | imd_obj = self.pool.get('ir.model.data') | ||
1230 | 266 | template_ids = imd_obj.search( | ||
1231 | 267 | cr, uid, [('model', '=', 'email.template'), ('name', '=', template)]) | ||
1232 | 268 | if template_ids: | ||
1233 | 269 | res_id = imd_obj.read( | ||
1234 | 270 | cr, uid, template_ids, ['res_id'])[0]['res_id'] | ||
1235 | 271 | body_html = self.pool.get('email.template').read( | ||
1236 | 272 | cr, uid, res_id, ['body_html']).get('body_html') | ||
1237 | 273 | |||
1238 | 274 | user_id = self.pool.get('res.users').browse(cr,uid,[uid],context=context)[0] | ||
1239 | 275 | hu = self.browse(cr, uid, ids[0], context=context) | ||
1240 | 276 | |||
1241 | 277 | body_html = body_html.replace('NAME_USER', user_id.name) | ||
1242 | 278 | body_html = body_html.replace('NAME_CRI', criteria) | ||
1243 | 279 | body_html = body_html.replace('NAME_HU', hu.name) | ||
1244 | 280 | |||
1245 | 281 | return body_html | ||
1246 | 282 | |||
1247 | 283 | else: | ||
1248 | 284 | return False | ||
1249 | 285 | |||
1250 | 286 | |||
1251 | 287 | def send_mail_hu(self, cr, uid, ids, subject, body, res_id, users=[], context=None): | ||
1252 | 288 | if not users: | ||
1253 | 289 | followers = self.read(cr, uid, ids[0], [ | ||
1254 | 290 | 'message_follower_ids'])['message_follower_ids'] | ||
1255 | 291 | else: | ||
1256 | 292 | followers = [] | ||
1257 | 293 | user_obj = self.pool.get('res.users') | ||
1258 | 294 | hu = self.browse(cr, uid, res_id, context=context) | ||
1259 | 295 | |||
1260 | 296 | owner_name = unicodedata.normalize('NFKD', hu.owner) | ||
1261 | 297 | owner_name = owner_name.encode('ASCII','ignore') | ||
1262 | 298 | owner_id = user_obj.search(cr, uid, [('name','=',owner_name)], context=context) | ||
1263 | 299 | |||
1264 | 300 | if hu.user_id and hu.user_id.partner_id: | ||
1265 | 301 | followers.append(hu.user_id.partner_id.id) | ||
1266 | 302 | if hu.user_execute_id and hu.user_execute_id.partner_id: | ||
1267 | 303 | followers.append(hu.user_execute_id.partner_id.id) | ||
1268 | 304 | if owner_id and len(owner_id)==1: | ||
1269 | 305 | user_o = user_obj.browse(cr,uid,owner_id,context=context) | ||
1270 | 306 | followers.append( user_o[0].partner_id.id) | ||
1271 | 307 | |||
1272 | 308 | context.update({ | ||
1273 | 309 | 'default_body': body, | ||
1274 | 310 | }) | ||
1275 | 311 | user_id = self.pool.get('res.users').browse(cr,uid,[uid],context=context)[0] | ||
1276 | 312 | |||
1277 | 313 | mail_mail = self.pool.get('mail.mail') | ||
1278 | 314 | mail_id = mail_mail.create(cr, uid, | ||
1279 | 315 | { | ||
1280 | 316 | 'model': 'user.story', | ||
1281 | 317 | 'res_id': res_id, | ||
1282 | 318 | 'subject': subject, | ||
1283 | 319 | 'body_html': body, | ||
1284 | 320 | 'auto_delete': False, | ||
1285 | 321 | 'email_from': user_id.email, | ||
1286 | 322 | }, context=context) | ||
1287 | 323 | mail_mail.send(cr, uid, [mail_id], | ||
1288 | 324 | recipient_ids=followers, | ||
1289 | 325 | context=context) | ||
1290 | 326 | |||
1291 | 327 | |||
1292 | 328 | return False | ||
1293 | 329 | |||
1294 | 330 | def write(self, cr, uid, ids, vals, context=None): | ||
1295 | 331 | res = super(user_story, self).write(cr, uid, ids, vals, context=context) | ||
1296 | 332 | |||
1297 | 333 | if 'accep_crit_ids' in vals: | ||
1298 | 334 | ac_obj = self.pool.get('acceptability.criteria') | ||
1299 | 335 | criteria = [False, False] | ||
1300 | 336 | for ac in vals.get('accep_crit_ids'): | ||
1301 | 337 | if ac[2] and ac[2].get('accepted', False): | ||
1302 | 338 | if ac[1]: | ||
1303 | 339 | ac_brw = ac_obj.browse(cr, uid, ac[1] , context=context) | ||
1304 | 340 | criteria[1] = ac_brw.name | ||
1305 | 341 | else: | ||
1306 | 342 | criteria[1] = ac[2].get('name', False) | ||
1307 | 343 | |||
1308 | 344 | body = self.body_criteria(cr, uid, ids, 'template_send_email_hu', criteria[1], context) | ||
1309 | 345 | hu = self.browse(cr, uid, ids[0], context=context) | ||
1310 | 346 | subject = 'Accepted Criteria - "%s"... in User Story with ID %s' % (criteria[1][:30],hu.id) | ||
1311 | 347 | self.send_mail_hu(cr, uid, ids, subject, body, hu.id, users=False, context=context) | ||
1312 | 348 | return res | ||
1313 | 349 | |||
1314 | 350 | def _phase_count(self, cr, uid, ids, field_name, arg, context=None): | 235 | def _phase_count(self, cr, uid, ids, field_name, arg, context=None): |
1315 | 351 | res = dict.fromkeys(ids, 0) | 236 | res = dict.fromkeys(ids, 0) |
1316 | 352 | phase_ids = self.pool.get('user.story.phase').search(cr, uid, [('user_story_id', 'in', ids)]) | 237 | phase_ids = self.pool.get('user.story.phase').search(cr, uid, [('user_story_id', 'in', ids)]) |