Revision f3342849 snf-astakos-app/astakos/im/templates/im/projects/projectapplication_detail.html

b/snf-astakos-app/astakos/im/templates/im/projects/projectapplication_detail.html
3 3
{% load filters %}
4 4

  
5 5
{% block page.body %}
6
{% with object.owners as owners %}
7
 
6

  
8 7
<div class="projects">
9 8
	
10 9

  
11 10
	<h2>
12
	 	{% if object.is_member %}
13
			<em>
14
				{% if object.is_owner %}
15
					{% if object.is_enabled %}
16
						[ ADMINISTRATOR - ACTIVE ]
17
					{% else %}
18
						[ ADMINISTRATOR - PENDING ]
19
					{% endif %}
20
				{%  else %}
21
					{% if  object.is_active_member %}
22
						[ ENROLLED - ACTIVE ]
23
					{% else %}
24
						[ ENROLLED - PENDING ]
25
					{% endif %}
26
				{% endif %}
27
			</em>		
28
		{% endif %}
29
	 	<span>{{ object.name|upper }}</span>
11
	 	<span>{{ object.definition.name|upper }}</span>
30 12
	 </h2>
31 13
	 
32 14
	 <div class="details">
33 15
	 	<h3>
34 16
	 		GENERAL INFO
35
		 	{% if object.is_owner %}
17
		 	{% if object.owner == user %}
36 18
		 		<a href="#" class="edit">EDIT</a>
37 19
		 	{% endif %}
38 20
	 	</h3>
39 21
	 	
40 22
	 	<div class="data">
41
		 	<p class="restricted">{{ object.desc|safe }}</p>
23
		 	<p class="restricted">{{ object.definition.description|safe }}</p>
42 24
		 	<dl class="alt-style">
43 25
			 	<dt>Homepage url</dt>
44 26
			 	<dd>
45
			 		{% if object.homepage%}
46
			 			<a href="{{ object.homepage }}">{{ object.homepage }}</a>
27
			 		{% if object.definition.homepage%}
28
			 			<a href="{{ object.homepage }}">{{ object.definition.homepage }}</a>
47 29
			 		{% else %}
48 30
			 			Not set yet
49 31
			 		{% endif %}
50 32
			 	</dd>
51 33
			 	<dt>Moderation</dt>
52 34
			 	<dd>
53
			 		{{ object.moderation_enabled|yesno:"Yes, No" }}
35
			 		{{ object.definition.member_accept_policy.description }}
54 36
			 	</dd>
55 37
			 </dl>
56 38
		</div>
57 39
		<div class="editable" style="display:none;">
58
		<form action="{% url astakos.im.views.group_detail object.id %}" method="post"
40
		<form action="{% url astakos.im.views.project_application_detail object.serial %}" method="post"
59 41
	            class="withlabels">{% csrf_token %}
60 42
	            {% with update_form as form %}
61 43
                    {% include "im/form_render.html" %}
......
70 52
		 <h3>DETAILS</h3>
71 53
		 <dl class="alt-style">
72 54
		 	<dt>Name</dt>
73
		 	<dd>{{ object.name }}&nbsp;</dd>
74
		 	<!--<dt>Type</dt>
75
		 	<dd>{{object.kindname|capfirst}}&nbsp;</dd>-->
55
		 	<dd>{{ object.definition.name }}&nbsp;</dd>
76 56
		 	<dt>Issue date:</dt>
77 57
		 	<dd>{{object.issue_date|date:"d/m/Y"}}&nbsp;</dd>
78
		 	<dt>Expiration Date</dt>
79
		 	<dd>{{object.expiration_date|date:"d/m/Y"}}&nbsp;</dd>
80
<!--
81
		 	<dt>Moderation</dt>
82
		 	<dd>{% if object.moderation_enabled%}Yes{% else %}No{% endif %}</dd>
83
 -->
58
		 	<dt>Start Date</dt>
59
		 	<dd>{{object.definition.start_date|date:"d/m/Y"}}&nbsp;</dd>
60
		 	<dt>End Date</dt>
61
		 	<dd>{{object.definition.end_date|date:"d/m/Y"}}&nbsp;</dd>
62
		 	<dt>Valid</dt>
63
		 	<dd>{% if object.is_valid %}Yes{% else %}No{% endif %}</dd>
84 64
		 	<dt>Activated</dt>
85
		 	<dd>{% if object.is_enabled %}Yes{% else %}No{% endif %}</dd>
65
		 	<dd>{% if object.is_active %}Yes{% else %}No{% endif %}</dd>
66
		 	<dt>Terminated</dt>
67
		 	<dd>{% if object.is_terminated %}Yes{% else %}No{% endif %}</dd>
68
		 	<dt>Suspended</dt>
69
		 	<dd>{% if object.is_suspended %}Yes{% else %}No{% endif %}</dd>
70
		 	<dt>Alive</dt>
71
		 	<dd>{% if object.is_alive %}Yes{% else %}No{% endif %}</dd>
72
		 	<dt>Inconsistent</dt>
73
		 	<dd>{% if object.is_inconsistent %}Yes{% else %}No{% endif %}</dd>
86 74
		 	<dt>Owner</dt>
87
		 	{{ o.owners }}
88
		 	<dd>{% for o in owners %}
89
                    {% if object.is_owner %}
75
		 	<dd>{% if object.object == user %}
90 76
                        Me
91 77
                    {% else%}
92
                        {{o.realname}} ({{o.email}})
78
                        {{object.owner.realname}} ({{object.owner.email}})
93 79
                    
94
                    {% endif %}
95
                {% endfor %}&nbsp;
80
                    {% endif %}&nbsp;
96 81
            </dd>
97 82
            <dt>Max participants</dt>
98
		 	<dd>{% if object.max_participants%}{{object.max_participants}}{% else %}&nbsp;{% endif %}</dd>
83
		 	<dd>{% if object.definition.%}{{object.definition.limit_on_members_number}}{% else %}&nbsp;{% endif %}</dd>
99 84
		 </dl>
100 85
	 </div>
101 86
	 <div class="full-dotted">
102
		 <h3>RESOURCES</h3>		 
103
		 {% if quota %}
87
		 <h3>RESOURCES</h3>
88
		 {% if object.definition.projectresourcegrant_set.all %}
104 89
		 <dl class="alt-style">	
105
	 		{% for q in quota %}
106
		 		 
90
	 		{% for q in object.definition.projectresourcegrant_set.all %}
107 91
		 		<dt>
108 92
       				Max {% if q.is_abbreviation %}{{ q.verbose_name|upper }}{% else %}{{ q.verbose_name }}{% endif %}{% if not q.unit %}s {% endif  %}  per user
109 93
       			</dt>
110 94
		 		<dd>
111
       			{% if q.value %}
95
       			{% if q.member_limit %}
112 96
       				 {% if q.unit %}
113
       				 	{{ q.value|sizeof_fmt }}
97
       				 	{{ q.member_limit|sizeof_fmt }}
114 98
       				 {% else %}
115
       				 	{{ q.value|isinf }}
99
       				 	{{ q.member_limit|isinf }}
116 100
       				 {% endif %}
117 101
       			{% else %}
118 102
       				Unlimited
......
128 112
            <p>No resources</p>
129 113
        {% endif %} 
130 114
	 </div>
131
     {% if object.is_owner %}
132
	 <div class="full-dotted">
133
	    {% with page|concat:sorting as args %}
134
	    {% with object.membership_set.select_related.all|paginate:args as membership %}
135
            {% if membership %}
136
            <form method="GET" class="minimal" action="#members-table">
137
                <div class="form-row">
138
                    <select name="sorting" onchange="this.form.submit();" class="dropkicked">
139
                        <option value="person__email" {% if sorting == 'person__email' %}selected{% endif %}>Sort by User Id</option>
140
                        <option value="person__first_name" {% if sorting == 'person__first_name' %}selected{% endif %}>Sort by Name</option>
141
                        <option value="date_joined" {% if sorting == 'date_joined' %}selected{% endif %}>Sort by Status</option>
142
                    </select>
143
                </div>
144
            </form>
145
             <table class="alt-style" id="members-table">
146
                <caption>MEMBERS:</caption>
147
                <thead>
148
                    <tr>
149
                        <th>User Id</th>
150
                        <th>Name</th>
151
                        <th>Status</th>
152
                    </tr>
153
                </thead>
154
                <tbody>
155
                {% for m in membership.object_list %}
156
                  <tr>
157
                    <td>{{m.person.email}}</td>
158
                    <td>{{m.person.realname}}</td>
159
                    {% if m.person in owners %}
160
                    <td>Owner</td>
161
                    {% else %}
162
                        {% if m.is_approved %}
163
                        <td>Approved
164
                            {% if object.is_owner %}
165
                                <a href="{% url disapprove_member object.id m.person.id  %}?{% if page %}page={{ page }}{% endif %}{% if sorting %}&sorting={{sorting}}{% endif %}">Remove</a>
166
                            {% endif %}
167
                        </td>
168
                        {% else %}
169
                        <td>Pending
170
                            {% if object.is_owner %}
171
                                <a href="{% url approve_member object.id m.person.id %}?{% if page %}page={{ page }}{% endif %}{% if sorting %}&sorting={{sorting}}{% endif %}">Accept</a>
172
                                <a href="{% url disapprove_member object.id m.person.id  %}?{% if page %}page={{ page }}{% endif %}{% if sorting %}&sorting={{sorting}}{% endif %}">Remove</a>
173
                            {% endif %}
174
                        </td>    
175
                        {% endif %}
176
                    {% endif %}
177
                  </tr>
178
                {% endfor %}
179
                </tbody>
180
             </table>
181
             <div class="pagination">
182
                <p class="next-prev">
183
                    {% if membership.has_previous %}
184
                        <a href="?page={{ membership.previous_page_number }}{% if sorting %}&sorting={{sorting}}{% endif %}">previous</a>
185
                    {% endif %}
186
                    {% if membership.has_next %}
187
                        <a href="?page={{ membership.next_page_number }}{% if sorting %}&sorting={{sorting}}{% endif %}">next</a>
188
                    {% endif %}
189
                </p>
190
                <p class="nums">
191
                    <span class="current">
192
                        Page {{ membership.number }} of {{ membership.paginator.num_pages }}
193
                    </span>
194
                </p>
195
            </div>
196
             {% else %}
197
                <p>No members yet!</p>
198
            {% endif %}
199
        {% endwith %}
200
        {% endwith %}
201
	 </div>
202
     
203
     
204
    
205
    <div class="full-dotted">
206
        <form action="{% url astakos.im.views.group_detail object.id %}#members-table" method="post" class="withlabels" >{% csrf_token %}
207
            <h2>Enroll more members</h2>
208
                {% with addmembers_form as form %}
209
                    {% include "im/form_render.html" %}
210
                {% endwith %}
211
                <div class="form-row submit">
212
                    <input type="submit" class="submit altcol" value="ADD MEMBERS" />
213
                </div>
214
        </form>
215
    </div>
216
    {% endif %}
217 115
    <div class="full-dotted">
218 116
    	<p>
219 117
    		<a href="{% url group_all %}">back to All Projects &gt;</a></li>
......
227 125
    
228 126
</div>
229 127
 
230
{% endwith %}
231 128
{% endblock %}

Also available in: Unified diff