diff options
author | Adolfo Fitoria <adolfo.fitoria@gmail.com> | 2012-09-03 15:25:38 -0600 |
---|---|---|
committer | Adolfo Fitoria <adolfo.fitoria@gmail.com> | 2012-09-03 15:25:38 -0600 |
commit | b7b3875154abcd9d22d90a9dd1862e23b4714e2a (patch) | |
tree | 158f862d65ed751613beb1fd04e0d0b233770ec2 /askbot/skins | |
parent | 4ef064ab11938f6913d3ebeaab43734f18b30442 (diff) | |
parent | 9babe8e48f4caaf58a7c5daf5b657b6438e7fb51 (diff) | |
download | askbot-b7b3875154abcd9d22d90a9dd1862e23b4714e2a.tar.gz askbot-b7b3875154abcd9d22d90a9dd1862e23b4714e2a.tar.bz2 askbot-b7b3875154abcd9d22d90a9dd1862e23b4714e2a.zip |
Merge branch 'user-groups' of github.com:ASKBOT/askbot-devel into user-groups
Diffstat (limited to 'askbot/skins')
-rw-r--r-- | askbot/skins/common/media/js/post.js | 6 | ||||
-rw-r--r-- | askbot/skins/default/templates/macros.html | 38 | ||||
-rw-r--r-- | askbot/skins/default/templates/widgets/group_info.html | 4 |
3 files changed, 34 insertions, 14 deletions
diff --git a/askbot/skins/common/media/js/post.js b/askbot/skins/common/media/js/post.js index ab1d8b6e..22b8cf9b 100644 --- a/askbot/skins/common/media/js/post.js +++ b/askbot/skins/common/media/js/post.js @@ -2607,7 +2607,11 @@ GroupJoinButton.prototype.getHandler = function(){ url: askbot['urls']['join_or_leave_group'], success: function(data){ if (data['success']){ - var new_state = data['is_member'] ? 'on-state':'off-state'; + var level = data['membership_level']; + var new_state = 'off-state'; + if (level == 'full' || level == 'pending') { + new_state = 'on-state'; + } me.setState(new_state); } else { showMessage(me.getElement(), data['message']); diff --git a/askbot/skins/default/templates/macros.html b/askbot/skins/default/templates/macros.html index 122d90c8..cf6bb922 100644 --- a/askbot/skins/default/templates/macros.html +++ b/askbot/skins/default/templates/macros.html @@ -230,8 +230,8 @@ poor design of the data or methods on data objects #} <br/> {{ group_join_button( group_id = group.id, - can_join = membership_info['can_join'], - is_member = membership_info['is_member'] + acceptance_level = membership_info['aceptance_level'], + membership_level = membership_info['membership_level'] ) }} {% endif %} @@ -248,21 +248,37 @@ poor design of the data or methods on data objects #} {% endif %} {%- endmacro -%} -{%- macro group_join_button(group_id = None, can_join = False, is_member = False) -%} - {% if can_join %} +{%- macro group_join_button( + group_id=None, acceptance_level='closed', membership_level='none') +-%} + {% if acceptance_level in ('open', 'moderated') %} <button - class="group-join-btn follow-toggle {% if is_member %}on on-state{% endif %}" + class="group-join-btn follow-toggle {% if membership_level != 'none' %}on on-state{% endif %}" data-group-id="{{group_id}}" - data-off-prompt-text="{% trans %}Leave this group{% endtrans %}" - data-on-prompt-text="{% trans %}Join this group{% endtrans %}" - data-on-state-text="{% trans %}You are a member{% endtrans %}" - data-off-state-text="{% trans %}Join this group{% endtrans %}" + {% if acceptance_level == 'open' %} + data-off-prompt-text="{% trans %}Leave this group{% endtrans %}" + data-on-prompt-text="{% trans %}Join this group{% endtrans %}" + data-on-state-text="{% trans %}You are a member{% endtrans %}" + data-off-state-text="{% trans %}Join this group{% endtrans %}" + {% else %} + {% if membership_level == 'full' %} + data-off-prompt-text="{% trans %}Leave this group{% endtrans %}" + data-on-state-text="{% trans %}You are a member{% endtrans %}" + {% else %} + data-off-prompt-text="{% trans %}Cancel application{% endtrans %}" + data-on-state-text="{% trans %}Waiting approval{% endtrans %}" + {% endif %} + data-on-prompt-text="{% trans %}Ask to join{% endtrans %}" + data-off-state-text="{% trans %}Ask to join{% endtrans %}" + {% endif %} > - {% if is_member %} + {% if membership_level == 'full' %} {% trans %}You are a member{% endtrans %} {% else %} - {% if can_join %} + {% if acceptance_level == 'open' %} {% trans %}Join this group{% endtrans %} + {% else %} + {% trans %}Ask to join{% endtrans %} {% endif %} {% endif %} </button> diff --git a/askbot/skins/default/templates/widgets/group_info.html b/askbot/skins/default/templates/widgets/group_info.html index b0284cd5..ce7b252f 100644 --- a/askbot/skins/default/templates/widgets/group_info.html +++ b/askbot/skins/default/templates/widgets/group_info.html @@ -16,8 +16,8 @@ <div class="clearfix"></div> {{ macros.group_join_button( group_id = group.id, - can_join = user_can_join_group, - is_member = user_is_group_member + acceptance_level = user_acceptance_level, + membership_level = user_is_group_member ) }} {% if request.user.is_authenticated() and request.user.is_administrator() %} |