Merge lp:~daker/loco-team-portal/fix.team-page into lp:loco-team-portal
- fix.team-page
- Merge into 0.2
Proposed by
Adnane Belmadiaf
Status: | Merged | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Approved by: | Adnane Belmadiaf | ||||||||||||||||||||
Approved revision: | 558 | ||||||||||||||||||||
Merged at revision: | 558 | ||||||||||||||||||||
Proposed branch: | lp:~daker/loco-team-portal/fix.team-page | ||||||||||||||||||||
Merge into: | lp:loco-team-portal | ||||||||||||||||||||
Diff against target: |
1045 lines (+550/-213) 5 files modified
.bzrignore (+1/-0) loco_directory/media/css/styles.css (+337/-39) loco_directory/media/fonts/stylesheet.css (+0/-16) loco_directory/teams/views.py (+16/-16) loco_directory/templates/teams/team_detail.html (+196/-142) |
||||||||||||||||||||
To merge this branch: | bzr merge lp:~daker/loco-team-portal/fix.team-page | ||||||||||||||||||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
LoCo Team Portal Developers | Pending | ||
Review via email: mp+133980@code.launchpad.net |
Commit message
A new Team page layout
Description of the change
result http://
To post a comment you must log in.
- 557. By Adnane Belmadiaf
-
* Fixed 789145
- 558. By Adnane Belmadiaf
-
* Fixed the form messages
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file '.bzrignore' |
2 | --- .bzrignore 2012-09-07 00:39:48 +0000 |
3 | +++ .bzrignore 2012-11-12 20:49:20 +0000 |
4 | @@ -20,3 +20,4 @@ |
5 | loco_directory/media/js/twidenash |
6 | env |
7 | .vagrant |
8 | +log.txt |
9 | \ No newline at end of file |
10 | |
11 | === modified file 'loco_directory/media/css/styles.css' |
12 | --- loco_directory/media/css/styles.css 2012-10-30 12:30:02 +0000 |
13 | +++ loco_directory/media/css/styles.css 2012-11-12 20:49:20 +0000 |
14 | @@ -71,7 +71,7 @@ |
15 | clear: right; |
16 | } |
17 | |
18 | -li.float_list { |
19 | +li.float_list { |
20 | float: left; |
21 | margin: 0px 0px 0px 25px; |
22 | clear: left; |
23 | @@ -130,7 +130,7 @@ |
24 | text-align: right; |
25 | display: inline; |
26 | } |
27 | - |
28 | + |
29 | #main-content .object-detail .option { |
30 | width: 32px; |
31 | height: 32px; |
32 | @@ -173,12 +173,12 @@ |
33 | } |
34 | |
35 | #page-footer .container div.copyright { |
36 | - font-size: 0.75em; |
37 | + font-size: 0.75em; |
38 | line-height: 1.5em; |
39 | } |
40 | |
41 | #page-footer .container div.loggedin { |
42 | - font-size: 0.75em; |
43 | + font-size: 0.75em; |
44 | line-height: 1.5em; |
45 | float: left; |
46 | width: 400px; |
47 | @@ -187,9 +187,9 @@ |
48 | } |
49 | |
50 | #page-footer .container div.lang_switcher { |
51 | - font-size: 0.75em; |
52 | + font-size: 0.75em; |
53 | line-height: 1.5em; |
54 | - float: right; |
55 | + float: right; |
56 | margin-bottom: 10px; |
57 | margin-top: 5px; |
58 | margin-right: 14px; |
59 | @@ -206,7 +206,7 @@ |
60 | list-style: none; |
61 | margin: -1px 2px 0px 3px; |
62 | padding: 0px; |
63 | - display: inline; |
64 | + display: inline; |
65 | } |
66 | |
67 | /* UI Errors ( To yell at the user when they don't fill out a form ) */ |
68 | @@ -425,7 +425,7 @@ |
69 | font-weight:normal; |
70 | } |
71 | |
72 | -.form div span.required { |
73 | +.form div span.required { |
74 | font-size:20px; |
75 | color: red; |
76 | margin-left:5px; |
77 | @@ -543,21 +543,288 @@ |
78 | } |
79 | |
80 | #locobranding { |
81 | - width: 96px; |
82 | - height: 96px; |
83 | - position: absolute; |
84 | - right: 10px; |
85 | + width: 96px; |
86 | + height: 96px; |
87 | + margin: 0 10px 10px 0px; |
88 | + -webkit-border-radius: 3px; |
89 | + -moz-border-radius: 3px; |
90 | + border-radius: 3px; |
91 | + float: left; |
92 | +} |
93 | + |
94 | +#locobranding img { |
95 | + width: 96px; |
96 | + height: 96px; |
97 | + -webkit-border-radius: 3px; |
98 | + -moz-border-radius: 3px; |
99 | + border-radius: 3px; |
100 | +} |
101 | + |
102 | +#loco-name { |
103 | + float: right; |
104 | + width: 545px; |
105 | +} |
106 | + |
107 | +#loco-location, |
108 | +#loco-language, |
109 | +#loco-support{ |
110 | + display: inline-block ; |
111 | + font-size: 12px; |
112 | +} |
113 | + |
114 | +#loco-language { |
115 | + display: inline-block ; |
116 | + margin-left: 10px; |
117 | +} |
118 | + |
119 | +#loco-support { |
120 | + display: inline-block ; |
121 | + margin-left: 10px; |
122 | +} |
123 | + |
124 | +#loco-location span.value, |
125 | +#loco-language span.value, |
126 | +#loco-support span.value{ |
127 | + position: relative; |
128 | + top: -5px; |
129 | + |
130 | +} |
131 | + |
132 | +span.ellipsis { |
133 | + white-space: nowrap; |
134 | + text-overflow: ellipsis; |
135 | + overflow: hidden; |
136 | + width: 170px; |
137 | + display: inline-block; |
138 | + line-height: 15px; |
139 | +} |
140 | + |
141 | +span.small-ellipsis { |
142 | + width: 100px!important; |
143 | +} |
144 | + |
145 | +span.medium-ellipsis { |
146 | + width: 165px!important; |
147 | +} |
148 | + |
149 | + |
150 | +.event-meetings { |
151 | + padding: 15px 48px 5px 15px; |
152 | + border-top: #CCC 1px dotted; |
153 | + display: block; |
154 | + text-decoration: none; |
155 | + color: black; |
156 | +} |
157 | + |
158 | +.event-meetings p{ |
159 | + color: black; |
160 | +} |
161 | + |
162 | +.events-meetings-wrapper { |
163 | + margin-top: 5px; |
164 | +} |
165 | + |
166 | +.events-meetings-wrapper h3.title |
167 | +{ |
168 | + padding-left: 15px; |
169 | + float: left; |
170 | +} |
171 | + |
172 | +.event-meetings span.title |
173 | +{ |
174 | + display:block; |
175 | + font-size:16px; |
176 | + line-height:20px; |
177 | + color:#dd4814; |
178 | +} |
179 | + |
180 | +.event-meetings small |
181 | +{ |
182 | + display:block; |
183 | + margin-bottom:8px; |
184 | + color:#666; |
185 | +} |
186 | + |
187 | +.event-meetings:hover |
188 | +{ |
189 | + background: #f7f6f5 url('../images/search_arrow.png') no-repeat right center; |
190 | +} |
191 | + |
192 | +.no-results { |
193 | + font-size: 12px; |
194 | + white-space: nowrap; |
195 | + word-wrap: normal; |
196 | + vertical-align: middle; |
197 | + text-align: center; |
198 | + margin: 0 0 20px 0; |
199 | + padding-top: 20px; |
200 | + border-top: 1px solid #E6E6E6; |
201 | + font-style: italic; |
202 | +} |
203 | + |
204 | +.team-photos-wrapper { |
205 | + border-top: #CCC 1px dotted; |
206 | + padding-top: 10px; |
207 | + margin-bottom: 5px; |
208 | +} |
209 | + |
210 | +.team-photos-wrapper h3.title |
211 | +{ |
212 | + padding-left: 15px; |
213 | +} |
214 | + |
215 | +.team-actions { |
216 | + white-space: nowrap; |
217 | + vertical-align: middle; |
218 | + float: right; |
219 | + padding-right: 15px; |
220 | +} |
221 | + |
222 | +.team-actions a{ |
223 | + height: 26px; |
224 | + padding-left: 5px; |
225 | + padding-right: 5px; |
226 | + margin-left: 5px; |
227 | + color: #333; |
228 | + border: 3px solid transparent; |
229 | + border-width: 3px 0; |
230 | + background: none; |
231 | + font-size: 12px; |
232 | + white-space: nowrap; |
233 | + word-wrap: normal; |
234 | + display: inline-block; |
235 | + text-transform: uppercase; |
236 | +} |
237 | + |
238 | +.team-actions a:hover{ |
239 | + border-bottom-color: #DD4814; |
240 | +} |
241 | + |
242 | +.team-admins a { |
243 | + display: block; |
244 | + text-decoration: none; |
245 | + margin-bottom: 4px; |
246 | + padding: 2px; |
247 | + height: 51px; |
248 | + -webkit-border-radius: 4px; |
249 | + -moz-border-radius: 4px; |
250 | + border-radius: 4px; |
251 | +} |
252 | + |
253 | +.team-admins img.mugshot { |
254 | + margin: 0; |
255 | + -webkit-border-radius: 4px; |
256 | + -moz-border-radius: 4px; |
257 | + border-radius: 4px; |
258 | + width: 50px; |
259 | +} |
260 | + |
261 | +.team-admins p { |
262 | + position: relative; |
263 | + top: -35px; |
264 | + margin: 0; |
265 | + font-size: 14px; |
266 | + width: 140px; |
267 | + left: 55px; |
268 | + |
269 | +} |
270 | + |
271 | +.team-social-wrapper { |
272 | + border-top: #CCC 1px dotted; |
273 | + overflow: auto; |
274 | +} |
275 | + |
276 | +.team-social-wrapper div.twitter-feed { |
277 | + border-right: #CCC 1px dotted; |
278 | +} |
279 | + |
280 | +.team-social-wrapper div.twitter-feed, |
281 | +.team-social-wrapper div.gplus-feed { |
282 | + float: left; |
283 | + width: 330px; |
284 | + display: block; |
285 | +} |
286 | + |
287 | +.team-social-wrapper div.twitter-feed h3.title, |
288 | +.team-social-wrapper div.gplus-feed h3.title { |
289 | + padding-left: 15px; |
290 | + padding-top: 10px; |
291 | +} |
292 | + |
293 | +.twidenash ul { |
294 | + margin: 0; |
295 | + padding-left: 15px; |
296 | +} |
297 | + |
298 | + |
299 | +.twidenash ul li { |
300 | + list-style-type: none; |
301 | + overflow: auto; |
302 | + padding: 3px; |
303 | + font-size: 0.75em; |
304 | +} |
305 | + |
306 | +.twidenash li .comment { |
307 | + overflow: hidden!important; |
308 | + margin-left: 5px; |
309 | + display: block; |
310 | +} |
311 | + |
312 | +.twidenash li img { |
313 | + -webkit-border-radius: 4px; |
314 | + -moz-border-radius: 4px; |
315 | + border-radius: 4px; |
316 | + padding: 0!important; |
317 | + margin-right: 10px; |
318 | +} |
319 | + |
320 | +.twidenash li .nick { |
321 | + font-weight: bold; |
322 | +} |
323 | + |
324 | +.twidenash li .time { |
325 | + font-size: 0.75em; |
326 | + color: #555; |
327 | +} |
328 | + |
329 | +.contact-button { |
330 | + background: transparent url(../images/bg_btn.png) repeat-x top left; |
331 | + -webkit-border-radius: 4px; |
332 | + -moz-border-radius: 4px; |
333 | + border-radius: 4px; |
334 | + font-size: 11px; |
335 | + font-weight: bold; |
336 | + text-align: center; |
337 | + white-space: nowrap; |
338 | + margin: 0; |
339 | + margin-left: 16px; |
340 | + height: 27px; |
341 | + line-height: 27px; |
342 | + outline: 0; |
343 | + padding: 0 10px; |
344 | + color: white!important; |
345 | + text-shadow: 0 1px rgba(0, 0, 0, 0.1); |
346 | + position: relative; |
347 | + display: inline-block; |
348 | + text-transform: uppercase; |
349 | + top: -4px; |
350 | +} |
351 | + |
352 | +.contact-button:active { |
353 | + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3); |
354 | + -moz-box-shadow: inset 0 1px 2px rgba(0,0,0,0.3); |
355 | + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3); |
356 | } |
357 | |
358 | /* My Teams style */ |
359 | -h2.dynamic-width { |
360 | - display: inline-block; |
361 | - margin-bottom: 0; |
362 | +h2.dynamic-width { |
363 | + display: inline-block; |
364 | + margin-bottom: 0; |
365 | } |
366 | |
367 | -.resources { |
368 | - font-size: 0.75em; |
369 | - float: right; |
370 | +.resources { |
371 | + font-size: 0.75em; |
372 | + float: right; |
373 | margin-top: 21px; |
374 | } |
375 | |
376 | @@ -566,7 +833,7 @@ |
377 | } |
378 | |
379 | .photo a { |
380 | - display: inline-block; |
381 | + display: inline-block; |
382 | padding: 7px; |
383 | } |
384 | |
385 | @@ -575,7 +842,7 @@ |
386 | } |
387 | |
388 | .main-content-split { |
389 | - width:450px; |
390 | + width:450px; |
391 | margin-top: 15px; |
392 | } |
393 | |
394 | @@ -632,13 +899,20 @@ |
395 | |
396 | /* Team photos feed */ |
397 | div#flickr, div#picasa, div#pixie { |
398 | - width:100%; |
399 | + margin-left: 15px; |
400 | + display: block; |
401 | } |
402 | |
403 | div#flickr a.lightbox img { |
404 | - border: 5px solid #b3aaa4; |
405 | - margin-left: 5px; |
406 | - margin-right: 5px; |
407 | + border: 2px solid #333; |
408 | + margin-right: 18px; |
409 | + margin-bottom: 10px; |
410 | + display: inline-block; |
411 | + border-radius: 3px; |
412 | + -moz-border-radius: 3px; |
413 | + -webkit-border-radius: 3px; |
414 | + width: 75px; |
415 | + height: 75px; |
416 | } |
417 | |
418 | div#picasa a.lightbox img { |
419 | @@ -828,7 +1102,7 @@ |
420 | } |
421 | |
422 | ol.comments li div.comment-error{ |
423 | - padding: 5px!important; |
424 | + padding: 5px!important; |
425 | background-color:#ffebe8; |
426 | border:1px solid #dd3c10 |
427 | } |
428 | @@ -919,7 +1193,6 @@ |
429 | -webkit-border-radius: 4px!important; |
430 | -moz-border-radius: 4px!important; |
431 | border-radius: 4px!important; |
432 | - cursor: default; |
433 | font-size: 14px!important; |
434 | text-align: center; |
435 | white-space: nowrap; |
436 | @@ -984,7 +1257,7 @@ |
437 | -moz-border-radius: 4px; |
438 | -webkit-border-radius: 4px; |
439 | border-radius: 4px; |
440 | - border: 1px solid #AEA79F; |
441 | + border: 1px solid #E6E6E6; |
442 | padding: 0; |
443 | background: white; |
444 | } |
445 | @@ -996,6 +1269,7 @@ |
446 | .pagelet { |
447 | padding: 17px 20px 5px 20px; |
448 | position: relative; |
449 | + overflow: auto; |
450 | } |
451 | |
452 | .event-venue { |
453 | @@ -1023,38 +1297,62 @@ |
454 | |
455 | /* Pictos */ |
456 | |
457 | -.pictogram { |
458 | - font-family: 'EntypoRegular'; |
459 | - font-size: 35px; |
460 | - position: relative; |
461 | - color: #1a3d51; |
462 | +.pictogram { |
463 | + font-family: 'EntypoRegular'; |
464 | + font-size: 35px!important; |
465 | + position: relative; |
466 | + color: #333; |
467 | margin: 4px 5px 0 0; |
468 | - width: 10px; |
469 | - height: 10px; |
470 | -} |
471 | + width: 20px; |
472 | + height: 20px; |
473 | + display: inline-block; |
474 | + top: -10px; |
475 | +} |
476 | |
477 | .pictogram-l { |
478 | position: relative; |
479 | top: -3px; |
480 | } |
481 | - |
482 | + |
483 | +.pictogram-t { |
484 | + line-height: 15px; |
485 | +} |
486 | + |
487 | + |
488 | .team:after { content: ","; } |
489 | .link:after { content: ";"; } |
490 | -.calendar:after { content: "P"; } |
491 | +.calendar:after { content: "N"; } |
492 | .rss:after { content: "S"; } |
493 | .tags:after { content: "C"; } |
494 | .comments:after { content: "9"; } |
495 | -.place:after { content: "0"; } |
496 | +.place:after { content: "0"; padding-left: 4px;} |
497 | .personne:after { content: "+"; } |
498 | .announcement:after { content: "K"} |
499 | .geo:after { content: "2"; font-size: 75px;} |
500 | +.language:after { content: "O"; padding-left: 2px;} |
501 | +.support:after { content: "b"; } |
502 | +.wiki:after { content: "2";} |
503 | +.ml:after { content: "%";} |
504 | +.forums:after { content: "9";} |
505 | +.ical:before { content: "P"; } |
506 | + |
507 | +.action { |
508 | + top: 3px!important; |
509 | + height: 26px!important; |
510 | + line-height: 1px; |
511 | +} |
512 | + |
513 | |
514 | .share .fb-like { |
515 | position: relative; |
516 | top: -2px; |
517 | } |
518 | |
519 | - |
520 | .highlight{ |
521 | background: #FFE99A; |
522 | +} |
523 | + |
524 | + |
525 | +.copyright { |
526 | + font-size: 0.8em; |
527 | } |
528 | \ No newline at end of file |
529 | |
530 | === removed file 'loco_directory/media/fonts/stylesheet.css' |
531 | --- loco_directory/media/fonts/stylesheet.css 2012-09-08 21:45:10 +0000 |
532 | +++ loco_directory/media/fonts/stylesheet.css 1970-01-01 00:00:00 +0000 |
533 | @@ -1,16 +0,0 @@ |
534 | -/* Generated by Font Squirrel (http://www.fontsquirrel.com) on February 10, 2012 */ |
535 | - |
536 | - |
537 | - |
538 | -@font-face { |
539 | - font-family: 'EntypoRegular'; |
540 | - src: url('entypo-webfont.eot'); |
541 | - src: url('entypo-webfont.eot?#iefix') format('embedded-opentype'), |
542 | - url('entypo-webfont.woff') format('woff'), |
543 | - url('entypo-webfont.ttf') format('truetype'), |
544 | - url('entypo-webfont.svg#EntypoRegular') format('svg'); |
545 | - font-weight: normal; |
546 | - font-style: normal; |
547 | - |
548 | -} |
549 | - |
550 | |
551 | === added file 'loco_directory/media/images/search_arrow.png' |
552 | Binary files loco_directory/media/images/search_arrow.png 1970-01-01 00:00:00 +0000 and loco_directory/media/images/search_arrow.png 2012-11-12 20:49:20 +0000 differ |
553 | === modified file 'loco_directory/teams/views.py' |
554 | --- loco_directory/teams/views.py 2011-10-10 16:06:02 +0000 |
555 | +++ loco_directory/teams/views.py 2012-11-12 20:49:20 +0000 |
556 | @@ -27,7 +27,7 @@ |
557 | import vobject |
558 | |
559 | def reapprovals(request): |
560 | - teams = filter(lambda a: a.approved and a.expires_date != None, |
561 | + teams = filter(lambda a: a.approved and a.expires_date != None, |
562 | Team.objects.all().order_by('expires_date', 'name')) |
563 | today = datetime.date.today() |
564 | half_a_year = datetime.timedelta(days=180) |
565 | @@ -43,7 +43,7 @@ |
566 | 'next_teams': next_teams, |
567 | 'later_teams': later_teams, |
568 | } |
569 | - return render_to_response('teams/team_reapprovals.html', |
570 | + return render_to_response('teams/team_reapprovals.html', |
571 | context, RequestContext(request)) |
572 | |
573 | def as_ical(objects, name): |
574 | @@ -61,7 +61,7 @@ |
575 | for o in objects: |
576 | o.as_ical(calendar) |
577 | response.write(calendar.serialize()) |
578 | - |
579 | + |
580 | return response |
581 | |
582 | def team_list(request): |
583 | @@ -87,7 +87,7 @@ |
584 | def my_teams(request): |
585 | teams = Team.objects.filter(lp_name__in=[group.name for group in request.user.groups.all()]) |
586 | context = { |
587 | - 'teams': teams, |
588 | + 'teams': teams, |
589 | } |
590 | return render_to_response('teams/my_teams.html', context, |
591 | RequestContext(request)) |
592 | @@ -171,13 +171,13 @@ |
593 | 'is_member' : is_member, |
594 | 'is_admin' : is_admin, |
595 | } |
596 | - return render_to_response('teams/team_detail.html', |
597 | + return render_to_response('teams/team_detail.html', |
598 | context, RequestContext(request)) |
599 | |
600 | @login_required |
601 | def select_other_team(request, team_slug): |
602 | team_object = get_object_or_404(Team, lp_name=team_slug) |
603 | - |
604 | + |
605 | #check if user has needed rights |
606 | is_admin = launchpad.is_admin_or_owner(request.user.username, team_object) |
607 | if not is_admin: |
608 | @@ -195,14 +195,14 @@ |
609 | def team_merge(request, team_slug, other_team_slug): |
610 | old_team = get_object_or_404(Team, lp_name=team_slug) |
611 | new_team = get_object_or_404(Team, lp_name=other_team_slug) |
612 | - |
613 | + |
614 | #check if user has needed rights |
615 | is_admin = launchpad.is_admin_or_owner(request.user.username, old_team) and \ |
616 | launchpad.is_admin_or_owner(request.user.username, new_team) |
617 | if not is_admin: |
618 | request.user.message_set.create(message=ugettext('You are not allowed to merge this team with another one.')) |
619 | return redirect(old_team) |
620 | - |
621 | + |
622 | msgs = merge_teams(old_team, new_team) |
623 | for msg in msgs: |
624 | request.user.message_set.create(message=msg) |
625 | @@ -218,7 +218,7 @@ |
626 | def team_edit(request, team_slug): |
627 | #get team |
628 | team_object = get_object_or_404(Team, lp_name=team_slug) |
629 | - |
630 | + |
631 | #check if user has needed rights |
632 | is_on_lc = launchpad.is_user_on_loco_council(request.user) |
633 | is_contact = launchpad.is_admin_or_owner(request.user.username, team_object) |
634 | @@ -233,20 +233,20 @@ |
635 | form = forms.UpdateTeamForm(data=request.POST, instance=team_object) |
636 | if form.is_valid(): |
637 | form.save() |
638 | - request.user.message_set.create(message=ugettext('Team details updated')) |
639 | + request.user.message_set.create(message=ugettext('Thanks, your team\'s details have been saved.')) |
640 | return redirect( team_object ) |
641 | else: |
642 | - request.user.message_set.create(message=ugettext('Team details could not be saved.')) |
643 | + request.user.message_set.create(message=ugettext('Recent changes to your team\'s details could not be saved.')) |
644 | else: |
645 | if is_on_lc: |
646 | form = forms.LoCoCouncilForm(instance=team_object) |
647 | else: |
648 | form = forms.UpdateTeamForm(instance=team_object) |
649 | - |
650 | - return render_to_response('teams/team_update.html', |
651 | - {'form': form, |
652 | - 'team':team_object, |
653 | - 'user':request.user, |
654 | + |
655 | + return render_to_response('teams/team_update.html', |
656 | + {'form': form, |
657 | + 'team':team_object, |
658 | + 'user':request.user, |
659 | }, RequestContext(request)) |
660 | |
661 | def xml_team_data(request): |
662 | |
663 | === modified file 'loco_directory/templates/teams/team_detail.html' |
664 | --- loco_directory/templates/teams/team_detail.html 2012-09-25 21:01:12 +0000 |
665 | +++ loco_directory/templates/teams/team_detail.html 2012-11-12 20:49:20 +0000 |
666 | @@ -8,17 +8,16 @@ |
667 | {% endblock %} |
668 | |
669 | {% block sub_nav_links %} |
670 | - <li><a class="sub-nav-item" href="{% url team-list %}" title="{% trans "Back to Teams List" %}">{% trans "Back to Teams List" %}</a></li> |
671 | - {% if is_member %}{% else %}<li><a class="sub-nav-item" href="https://launchpad.net/~{{ team.lp_name }}/+join">{% trans "Join This Team!" %}</a></li>{% endif %} |
672 | - {% if is_admin %}<li><a class="sub-nav-item" href="{% url team-edit team.lp_name %}" title="{% trans "Edit Details" %}">{% trans "Edit Details" %}</a></li>{% endif %} |
673 | - {% if is_admin and not team.active %}<li><a class="sub-nav-item" href="{% url select-other-team team.lp_name %}" title="{% trans "Merge with another team" %}">{% trans "Merge team" %}</a></li>{% endif %} |
674 | - {% if is_member %}<li><a class="sub-nav-item" href="{% url team-event-new team.lp_name %}" title="{% trans "Add New Event" %}">{% trans "Add New Event" %}</a></li>{% endif %} |
675 | - {% if is_member %}<li><a class="sub-nav-item" href="{% url team-meeting-new team.lp_name %}" title="{% trans "Add New Meeting" %}">{% trans "Add New Meeting" %}</a></li>{% endif %} |
676 | + <li><a class="sub-nav-item" href="{% url team-list %}" title="{% trans "Back to Teams List" %}">{% trans "Back to Teams List" %}</a></li> |
677 | + {% if is_member %}{% else %}<li><a class="sub-nav-item" href="https://launchpad.net/~{{ team.lp_name }}/+join">{% trans "Join This Team!" %}</a></li>{% endif %} |
678 | + {% if is_admin %}<li><a class="sub-nav-item" href="{% url team-edit team.lp_name %}" title="{% trans "Edit Details" %}">{% trans "Edit Details" %}</a></li>{% endif %} |
679 | + {% if is_admin and not team.active %}<li><a class="sub-nav-item" href="{% url select-other-team team.lp_name %}" title="{% trans "Merge with another team" %}">{% trans "Merge team" %}</a></li>{% endif %} |
680 | + {% if is_member %}<li><a class="sub-nav-item" href="{% url team-event-new team.lp_name %}" title="{% trans "Add New Event" %}">{% trans "Add New Event" %}</a></li>{% endif %} |
681 | + {% if is_member %}<li><a class="sub-nav-item" href="{% url team-meeting-new team.lp_name %}" title="{% trans "Add New Meeting" %}">{% trans "Add New Meeting" %}</a></li>{% endif %} |
682 | {% endblock %} |
683 | |
684 | |
685 | {% block extrahead %}{{ block.super }} |
686 | -<script type="text/javascript" src="{{MEDIA_URL}}jquery/jquery.js"></script> |
687 | {% if team.flickr_id or team.picasa_id or team.pixie_id %} |
688 | <script type="text/javascript" src="{{MEDIA_URL}}js/jquery.lightbox-0.5.min.js"></script> |
689 | <link rel="stylesheet" href="{{MEDIA_URL}}css/jquery.lightbox-0.5.css" type="text/css" media="screen" /> |
690 | @@ -36,12 +35,12 @@ |
691 | <script type="text/javascript" src="{{MEDIA_URL}}js/jquery-pixie.js"></script> |
692 | {% endif %} |
693 | |
694 | -<link rel="stylesheet" type="text/css" href="{{MEDIA_URL}}/css/twidenash.css" /> |
695 | +<link rel="stylesheet" type="text/css" href="{{MEDIA_URL}}css/twidenash.css" /> |
696 | <script type="text/javascript" src="{{MEDIA_URL}}js/twidenash/jquery-twidenash.js"></script> |
697 | |
698 | -<script type="text/javascript"> |
699 | +<script type="text/javascript"> |
700 | $(function() { |
701 | - var perPage = '16'; |
702 | + var perPage = '14'; |
703 | $('.twidenash').twidenash({ |
704 | sources: [ |
705 | 'http://search.twitter.com/', |
706 | @@ -49,7 +48,7 @@ |
707 | }); |
708 | |
709 | {% if team.flickr_id %} |
710 | - $('#flickr').flickr({ key: "{{ flickr_api_key }}", id: "{{ team.flickr_id }}", amount: 6 }); |
711 | + $('#flickr').flickr({ key: "{{ flickr_api_key }}", id: "{{ team.flickr_id }}", amount: perPage }); |
712 | {% endif %} |
713 | |
714 | {% if team.picasa_id %} |
715 | @@ -75,144 +74,199 @@ |
716 | |
717 | {% block content %} |
718 | <div class="row"> |
719 | - <section class="span8"> |
720 | - <h2><a href="https://launchpad.net/~{{ team.lp_name }}">{{ team.name }}</a></h2> |
721 | - <img id="locobranding" src="{{ team.mugshot_url }}" alt="" title="{{ team.name }}" /> |
722 | - <table> |
723 | - <tr> |
724 | - <th class="form-item-label" scope="row">{% trans "Location:" %}</th> |
725 | - <td class="form-item-value"> |
726 | - {% if team.countries.all %} |
727 | - {% for country in team.countries.all %}{% if not forloop.first %}, {% endif %}{{ country.name }}{% endfor %}{% if team.spr %}, {% trans team.spr %}{% endif %}{% if team.city %}, {% trans team.city %}{% endif %} |
728 | - {% else %} |
729 | - {% trans "None Specified" %} |
730 | - {% endif %} |
731 | - </td> |
732 | - </tr> |
733 | - <tr> |
734 | - <th class="form-item-label" scope="row">{% trans "Languages:" %}</th> |
735 | - <td class="form-item-value"> |
736 | - {% if team.languages.all %} |
737 | - {% for language in team.languages.all %}{% if not forloop.first %}, {% endif %}{{ language.name }}{% endfor %} |
738 | - {% else %} |
739 | - {% trans "None Specified" %} |
740 | - {% endif %} |
741 | - </td> |
742 | - </tr> |
743 | - {% if team.approved_date %} |
744 | - <tr> |
745 | - <th class="form-item-label" scope="row">{% trans "Approval Date:" %}</th> |
746 | - <td class="form-item-value">{{ team.approved_date }}</td> |
747 | - </tr> |
748 | - {% endif %} |
749 | - {% if team.approved %} |
750 | - <tr> |
751 | - <th class="form-item-label" scope="row">{% trans "Reapproval Date:" %}</th> |
752 | - <td class="form-item-value">{{ team.expires_date }}</td> |
753 | - </tr> |
754 | - {% endif %} |
755 | - <tr> |
756 | - <th class="form-item-label" scope="row">{% trans "Local Support:" %}</th> |
757 | - <td class="form-item-value">{% if team.provides_support %}Yes{% else %}No{% endif %}</td> |
758 | - </tr> |
759 | - <tr> |
760 | - <th class="form-item-label" scope="row">{% trans "Team Admin(s):" %}</th> |
761 | - <td class="form-item-value"> |
762 | - {% for admin in team.admin_profiles.all %} |
763 | - {% ifequal team.owner admin.user.username %} |
764 | - <strong><a href="https://launchpad.net/~{{ admin.user.username }}">{{ admin.realname }}</a></strong> |
765 | - {% else %} |
766 | - <a href="https://launchpad.net/~{{ admin.user.username }}">{{ admin.realname }}</a>{% endifequal %}{% if not forloop.last %},{% endif %} |
767 | - {% endfor %} |
768 | - </td> |
769 | - </tr> |
770 | - <tr> |
771 | - <th class="form-item-label" scope="row">{% trans "Team Contact(s):" %}</th> |
772 | - <td class="form-item-value"> |
773 | + <section class="span-9"> |
774 | + <div class="box_content"> |
775 | + <div class="pagelet"> |
776 | + <div id="locobranding"> |
777 | + <img src="{{ team.mugshot_url }}" alt="{{ team.name }}" title="{{ team.name }}" /> |
778 | + </div> |
779 | + <div id="loco-name"> |
780 | + <h2>{{ team.name }} <a class="contact-button" href="https://launchpad.net/~{{ team.lp_name }}/+contactuser/" title="{% trans "Contact this team" %}" target="_blank">{% trans "Contact this team" %}</a></h2> |
781 | + <div style="display:block;"> |
782 | + <div id="loco-location"> |
783 | + <span title="{% trans "Location" %}" class="pictogram place"></span> |
784 | + <span class="value ellipsis small-ellipsis"> |
785 | + {% if team.countries.all %} |
786 | + {% for country in team.countries.all %} |
787 | + {% if not forloop.first %}, {% endif %}{{ country.name }} |
788 | + {% endfor %} |
789 | + {% if team.spr %}, {% trans team.spr %}{% endif %}{% if team.city %}, {% trans team.city %} |
790 | + {% endif %} |
791 | + {% else %} |
792 | + {% trans "None Specified" %} |
793 | + {% endif %} |
794 | + </span> |
795 | + </div> |
796 | + |
797 | + <div id="loco-language"> |
798 | + <span title="{% trans "Languages" %}" class="pictogram language"></span> |
799 | + <span class="value ellipsis"> |
800 | + {% if team.languages.all %} |
801 | + {% for language in team.languages.all %} |
802 | + {% if not forloop.first %}, {% endif %}{{ language.name }} |
803 | + {% endfor %} |
804 | + {% else %} |
805 | + {% trans "None Specified" %} |
806 | + {% endif %} |
807 | + </span> |
808 | + </div> |
809 | + |
810 | + <div id="loco-support"> |
811 | + <span title="{% trans "Local Support" %}" class="pictogram support"></span> |
812 | + <span class="value ellipsis medium-ellipsis"> |
813 | + {% if team.provides_support %} |
814 | + {% trans "This LoCo provides support :)" %} |
815 | + {% else %} |
816 | + {% trans "This LoCo doesn't provide support :(" %} |
817 | + {% endif %} |
818 | + </span> |
819 | + </div> |
820 | + </div> |
821 | + |
822 | + <div style="display:block;"> |
823 | + <div id="loco-location"> |
824 | + <span title="{% trans "Mailing List" %}" class="pictogram ml"></span> |
825 | + <span class="value ellipsis small-ellipsis"> |
826 | + {% if team.web_url %} |
827 | + <a href="{{ team.web_url }}" title="{% trans "Website" %}" target="_blank"> |
828 | + {% trans "Website" %} |
829 | + </a> |
830 | + {% endif %} |
831 | + {% if team.web_url and team.wiki_url %} / {% endif %} |
832 | + {% if team.wiki_url %} |
833 | + <a href="{{ team.wiki_url }}" title="{% trans "Wiki" %}" target="_blank"> |
834 | + {% trans "Wiki" %} |
835 | + </a> |
836 | + {% endif %} |
837 | + </span> |
838 | + </div> |
839 | + |
840 | + |
841 | + <div id="loco-support"> |
842 | + <span class="pictogram forums" title="{% trans "Local Support" %}"></span> |
843 | + <span class="value ellipsis"> |
844 | + {% if team.ml_url %} |
845 | + <a href="{{ team.ml_url }}" title="{% trans "Mailing List" %}" target="_blank"> |
846 | + {% trans "Mailing List" %} |
847 | + </a> |
848 | + {% endif %} / |
849 | + {% if team.forum_url %} |
850 | + <a href="{{ team.forum_url }}" title="{% trans "Forums" %}" target="_blank"> |
851 | + {% trans "Forums" %} |
852 | + </a> |
853 | + {% endif %} / |
854 | + {% if team.irc_chan %} |
855 | + <a href="http://webchat.freenode.net/?channels={{ team.irc_chan }}&prompt=1&uio=OT10cnVlJjEwPXRydWUmMTE9MjM218&nick={% if user.is_authenticated %}{{ user.username|irc }}{% else %}locodir-user{% endif %}" title="{% trans "IRC" %}" target="_blank"> |
856 | + {% trans "IRC" %} |
857 | + </a> |
858 | + {% endif %} |
859 | + </span> |
860 | + </div> |
861 | + |
862 | + <div id="loco-support"> |
863 | + <span title="{% trans "Reapproval Date:" %}" class="pictogram calendar"></span> |
864 | + <span class="value ellipsis medium-ellipsis"> |
865 | + {% if team.approved %} |
866 | + {% trans "Reapproval Date:" %} {{ team.expires_date }} |
867 | + {% endif %} |
868 | + </span> |
869 | + </div> |
870 | + |
871 | + </div> |
872 | + </div> |
873 | + </div> |
874 | + <div class="events-meetings-wrapper"> |
875 | + <div style="overflow: auto;"> |
876 | + <h3 class="title">{% trans "Upcoming Events" %}</h3> |
877 | + <div class="team-actions"> |
878 | + <span> |
879 | + <a href="{% url team-event-list team.lp_name %}" title="{% trans "All Events" %}">{% trans "All Events" %}</a> |
880 | + </span> |
881 | + <span> |
882 | + <a href="{% url team-meeting-list team.lp_name %}" title="{% trans "All Meetings" %}">{% trans "All Meetings" %}</a> |
883 | + </span> |
884 | + <span> |
885 | + <a href="{% url team-event-history team.lp_name %}" title="{% trans "Past Events" %}">{% trans "Past Events" %}</a> |
886 | + </span> |
887 | + <span> |
888 | + <a class="pictogram rss action" href="{% url team-events-rss team.lp_name %}" title="{% trans "RSS Feed" %}"></a> |
889 | + </span> |
890 | + <span> |
891 | + <a class="pictogram ical action" href="{% url team-calendar team.lp_name %}" title="{% trans "iCal Feed" %}"></a> |
892 | + </span> |
893 | + </div> |
894 | + </div> |
895 | + {% if team.next_5_events_and_meetings %} |
896 | + {% for team_event in team.next_5_events_and_meetings %} |
897 | + <a href="{% url team-event-detail team_event.first_team.lp_name team_event.id %}" title="{% if team_event.venue %}{% else %}{{team_event.date_begin|date:"M d"}}{% endif %}" class="event-meetings"> |
898 | + <span class="title">{{ team_event.name }}</span> |
899 | + <small>{{ team_event.local_date_begin|date:"l, d N Y" }} {% trans "at " %}{{ team_event.local_date_begin|date:"H:i T" }}</small> |
900 | + <p>{{ team_event.description }}</p> |
901 | + </a> |
902 | + {% endfor %} |
903 | + {% else %} |
904 | + <div class="no-results"> |
905 | + {% trans "There are currently no upcoming events :(" %} |
906 | + </div> |
907 | + {% endif %} |
908 | + </div> |
909 | + |
910 | + {% if team.flickr_id or team.picasa_id or team.pixie_id %} |
911 | + <div class="team-photos-wrapper"> |
912 | + {% with team.name as team_name %} |
913 | + <h3 class="title">{% blocktrans %}Photos from {{ team_name }}{% endblocktrans %}</h3> |
914 | + {% endwith %} |
915 | + <div id="flickr"> </div> |
916 | + <div id="picasa"> </div> |
917 | + <div id="pixie"> </div> |
918 | + </div> |
919 | + {% endif %} |
920 | + |
921 | + <div class="team-social-wrapper"> |
922 | + {% if team.microbloghashtag %} |
923 | + <div class="twitter-feed"> |
924 | + <h3 class="title">{% trans "Microblogging" %} #{{ team.microbloghashtag }}</h3> |
925 | + <div class="twidenash" id="{{ team.microbloghashtag }}"></div> |
926 | + </div> |
927 | + {% endif %} |
928 | + <div class="gplus-feed"> |
929 | + </div> |
930 | + </div> |
931 | + </div> |
932 | + </section> |
933 | + <section class="span-3 box_content last"> |
934 | + <div class="sidebar-inner"> |
935 | + <h3 class="title">{% trans "Team Admin(s)" %}</h3> |
936 | + <div class="team-admins"> |
937 | + {% for admin in team.admin_profiles.all %} |
938 | + {% ifequal team.owner admin.user.username %} |
939 | + <a href="https://launchpad.net/~{{ admin.user.username }}"> |
940 | + <img alt="" class="photo fn" src="{% if admin.mugshot %}{{ admin.mugshot }}{% else %}{{MEDIA_URL}}img/default-mugshot.png{% endif %}" class="mugshot"> |
941 | + <p>{{ admin.realname }}</p> |
942 | + </a> |
943 | + {% else %} |
944 | + <a href="https://launchpad.net/~{{ admin.user.username }}"> |
945 | + <img alt="{{ admin.realname }}" src="{% if admin.mugshot %}{{ admin.mugshot }}{% else %}{{MEDIA_URL}}img/default-mugshot.png{% endif %}" class="mugshot" height="50" width="50"> |
946 | + <p>{{ admin.realname }}</p> |
947 | + </a> |
948 | + {% endifequal %} |
949 | + {% endfor %} |
950 | + </div> |
951 | + <h3 class="title">{% trans "Team Contact(s)" %}</h3> |
952 | + <div class="team-admins"> |
953 | {% if team.contact_profiles.all %} |
954 | {% for contact in team.contact_profiles.all %} |
955 | - <a href="https://launchpad.net/~{{ contact.user.username }}">{{ contact.realname }}</a>{% if not forloop.last %},{% endif %} |
956 | + <a href="https://launchpad.net/~{{ contact.user.username }}"> |
957 | + <img alt="{{ contact.realname }}" src="{% if contact.mugshot %}{{ contact.mugshot }}{% else %}{{MEDIA_URL}}img/default-mugshot.png{% endif %}" class="mugshot" height="50" width="50"> |
958 | + <p>{{ contact.realname }}</p> |
959 | + </a> |
960 | {% endfor %} |
961 | {% else %} |
962 | <p>{% trans "No LoCo Team contacts are set." %}</p> |
963 | {% endif %} |
964 | - </td> |
965 | - </tr> |
966 | - <tr> |
967 | - <th class="form-item-label" scope="row">{% trans "Resources:" %}</th> |
968 | - <td class="form-item-value"> |
969 | - {% if team.wiki_url %} |
970 | - <a href="{{ team.wiki_url }}"><img class="resource" src="/media/images/team/wiki.png" alt="{% trans "Team Wiki" %}" title="{% trans "Team Wiki" %}" /></a> |
971 | - {% endif %} |
972 | - {% if team.irc_chan %} |
973 | - <img class="resource" style="cursor:pointer;" src="/media/images/team/irc.png" onclick="$('#webchat').show('fast', function() {$(window).scrollTop($('#webchat').position().top);} );" alt="{% trans "IRC Channel" %} ({{ team.irc_chan }})" title="{% trans "IRC Channel" %} ({{ team.irc_chan }})" /> |
974 | - {% endif %} |
975 | - {% if team.ml_url %} |
976 | - <a href="{{ team.ml_url }}"><img class="resource" src="/media/images/team/list.png" alt="{% trans "Team Mailing List" %}" title="{% trans "Team Mailing List" %}" /></a> |
977 | - {% endif %} |
978 | - {% if team.forum_url %} |
979 | - <a href="{{ team.forum_url }}"><img class="resource" src="/media/images/team/forum.png" alt="{% trans "Team Forums" %}" title="{% trans "Team Forums" %}" /></a> |
980 | - {% endif %} |
981 | - {% if team.web_url %} |
982 | - <a href="{{ team.web_url }}"><img class="resource" src="/media/images/team/website.png" alt="{% trans "Team Website" %}" title="{% trans "Team Website" %}" /></a> |
983 | - {% endif %} |
984 | - </td> |
985 | - </tr> |
986 | - <tr> |
987 | - <th class="form-item-label" scope="row">{% trans "Upcoming Events:" %}</th> |
988 | - <td class="form-item-value"> |
989 | - <ul class="team-event-nav"> |
990 | - <li style="font-size:0.98em"><a href="{% url team-event-list team.lp_name %}">{% trans "All Events" %}</a></li> |
991 | - <li style="font-size:0.98em"><a href="{% url team-meeting-list team.lp_name %}">{% trans "All Meetings" %}</a></li> |
992 | - <li style="font-size:0.98em"><a href="{% url team-event-history team.lp_name %}">{% trans "Past Events" %}</a></li> |
993 | - <li style="font-size:0.98em"><a href="{% url team-events-rss team.lp_name %}">{% trans "RSS Feed" %}</a></li> |
994 | - <li style="font-size:0.98em"><a href="{% url team-calendar team.lp_name %}">{% trans "iCal Feed" %}</a></li> |
995 | - </ul> |
996 | - {% if team.next_5_events_and_meetings %} |
997 | - <ul> |
998 | - {% for team_event in team.next_5_events_and_meetings %} |
999 | - {% include team_event.template %} |
1000 | - {% endfor %} |
1001 | - </ul> |
1002 | - {% else %} |
1003 | - {% trans "None Specified" %} |
1004 | - {% endif %} |
1005 | - </td> |
1006 | - </tr> |
1007 | - </table> |
1008 | -</section> |
1009 | -</div> |
1010 | - |
1011 | -{% if team.microbloghashtag %} |
1012 | -<article class="minor-content alone"> |
1013 | - <h2>{% trans "Microblogging" %} #{{team.microbloghashtag}}</h2> |
1014 | - <div class="twidenash" id="{{ team.microbloghashtag }}"></div> |
1015 | -</article> |
1016 | -{% endif %} |
1017 | - |
1018 | -<hr class="divide" /> |
1019 | - |
1020 | -{% if team.irc_chan %} |
1021 | - <div id="webchat"> |
1022 | - {% if user.is_authenticated %} |
1023 | - <iframe src="http://webchat.freenode.net/?channels={{ team.irc_chan }}&prompt=1&uio=OT10cnVlJjEwPXRydWUmMTE9MjM218&nick={{ user.username|irc }}" width="900" height="400"></iframe> |
1024 | - {% else %} |
1025 | - <iframe src="http://webchat.freenode.net/?channels={{ team.irc_chan }}&prompt=1&uio=OT10cnVlJjEwPXRydWUmMTE9MjM218&nick=locodir-user" width="900" height="400"></iframe> |
1026 | - {% endif %} |
1027 | - </div> |
1028 | -{% endif %} |
1029 | - |
1030 | -{% if team.flickr_id or team.picasa_id or team.pixie_id %} |
1031 | -<div class="row"> |
1032 | - <section class="span-12"> |
1033 | - {% with team.name as team_name %} |
1034 | - <h2>{% blocktrans %}Photos from {{ team_name }}{% endblocktrans %}</h2> |
1035 | - {% endwith %} |
1036 | - <div id="flickr"> </div> |
1037 | - <div id="picasa"> </div> |
1038 | - <div id="pixie"> </div> |
1039 | + </div> |
1040 | + </div> |
1041 | </section> |
1042 | </div> |
1043 | -{% endif %} |
1044 | |
1045 | {% endblock %} |