source: trunk/skins/lemill/widget_group.pt @ 1785

Revision 1785, 3.5 KB checked in by jukka, 12 years ago (diff)

Fixed #1376. Seemed simple, but was complicated. Group_workflow is changed to allow editing by members in general, but actual edit pages have checks to check if user belongs to group if material does. New workflow groupblog_workflow especially for groupblogs.

Line 
1<html xmlns="http://www.w3.org/1999/xhtml"
2      xmlns:tal="http://xml.zope.org/namespaces/tal"
3      xmlns:metal="http://xml.zope.org/namespaces/metal"
4      xmlns:i18n="http://xml.zope.org/namespaces/i18n"
5      i18n:domain="plone">
6
7<head>
8    <title></title>
9</head>
10
11<body>
12
13    <!-- Selection Widgets -->
14
15    <metal:view_macro define-macro="view"
16                      tal:define="vocab python:field.Vocabulary(here);
17                                  value python:accessor();
18                                  display python:here.displayValue(vocab, value)"
19                      tal:replace="structure display" />
20
21    <metal:define define-macro="edit">
22
23        <tal:supersecurity condition="python: here.amIOwner() or here.amIManager()">
24        <metal:use use-macro="field_macro | here/widgets/field/macros/edit">
25
26            <metal:fill fill-slot="widget_body"
27                        tal:define="vocab python:field.Vocabulary(here);
28                                    vlen python:len(vocab);
29                                    format python:widget.format">
30
31                <tal:shortVocab condition="python:(vlen &lt; 4 and format == 'flex') or (format == 'radio')">
32
33                    <!-- Radio when the vocab is short < 4 -->
34
35                    <tal:radios repeat="item vocab">
36
37                        <input class="noborder"
38                               tabindex=""
39                               type="radio"
40                               tal:define="tabindex tabindex/next"
41                               tal:attributes="name fieldName;
42                                               id string:${fieldName}_${repeat/item/number};
43                                               checked python:here.checkSelected(item, value);
44                                               value item;
45                                               tabindex tabindex;"
46                               />
47
48                        <label tal:content="python:here.translate(vocab.getMsgId(item), default=vocab.getValue(item))"
49                               i18n:translate=""
50                               tal:attributes="for string:${fieldName}_${repeat/item/number}" />
51
52                        <span tal:condition="repeat/item/end">
53                            <input type="text" name="new_group_name" value="" />
54                        </span>
55                        <br />
56
57                    </tal:radios>
58
59                </tal:shortVocab>
60
61                <tal:longVocab condition="python:(vlen >= 4 and format == 'flex') or (format in ('select', 'pulldown'))">
62
63                    <!-- Pulldown when longer -->
64                    <select tal:attributes="name fieldName;
65                                            id fieldName;
66                                            tabindex tabindex/next;">
67
68                        <option tal:repeat="item vocab"
69                                tal:attributes="value item;
70                                                selected python:here.checkSelected(item, value) and 'selected' or None"
71                                tal:content="python:here.translate(vocab.getMsgId(item), default=vocab.getValue(item))"
72                                i18n:translate=""
73                                />
74
75                    </select>
76
77                </tal:longVocab>
78
79            </metal:fill>
80
81        </metal:use>
82        </tal:supersecurity>
83
84    </metal:define>
85
86    <div metal:define-macro="search">
87        <div metal:use-macro="here/widgets/selection/macros/edit" />
88    </div>
89
90</body>
91
92</html>
Note: See TracBrowser for help on using the repository browser.